[MacPorts] #44616: Glom will not build with +quartz option
#44616: Glom will not build with +quartz option ----------------------+-------------------------------- Reporter: m.rick@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Keywords: | Port: ----------------------+-------------------------------- Glom will not build with the +quartz option because it depends of Yelp which is needing gnome-desktop which has GTK2 X11 dependencies. But building GTK2 X11 will occurs errors for the other ports which are built with GTK quartz like GTK3, since yelp is needing webkit-gtk3 which is is using GTK3 quartz … It seems to be unsolvable to get it working with quartz and should be mentioned somewhere. Yelp is it really necessary to run the application? Any other GTK based applications can use Yelp, but it is enabled as an option, not using it allow to build the port normally with quartz. No problem to build Gimp, Gnumeric or Viking with the +quartz option. -- Ticket URL: <https://trac.macports.org/ticket/44616> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Changes (by mf2k@…): * owner: macports-tickets@… => landonf@… * port: => glom Comment: In the future, please fill in the Port field and Cc the port maintainers ({{{port info --maintainers glom}}}). -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by devans@…): I'm not surprised that glom does not build using gtk3 +quartz and yelp may just be the beginning of your problems. GNOME ports (this is one), in general, are designed to build for X11 and may or may not at the upstream developers discretion be suitable for Quartz either because of their own unconditional use of X11 specific API or because of one of their dependencies. In this case, yelp is not suitable for Quartz builds because of its use of X11 API. It is declared as a runtime dependency because without it, use of the Help menu fails. This is true for most GNOME applications. GIMP is not a GNOME but rather a pure GTK+ application and as such does not depend on yelp, gnumeric IS a GNOME app but uses the optional approach to yelp (and help support). So the bottom line is, for GNOME apps, you should not expect that they should build with Quartz and if they do you should be appreciative that the upstream developers are OS X friendly. As far as I know, the current version of glom has not been tested for Quartz compatibility (other than by you). If you would like to try further just comment out the yelp dependency and probably the gnome-settings- daemon as well (this will disable GNOME theming support) and try again. Be sure that all of your dependencies are built with +quartz -x11. Things will probably fail as you have described if you try to combine X11 and Quartz built applications. As you find problems with Quartz compatibility you should report the problem to the upstream developers via GNOME's bugzilla. They may help but often the reply is "send a patch and we'll think about it." I'll leave this ticket open for now but it might be better to discuss this sort of issue on macports-users mail list. Good luck! -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by devans@…): As an example take a look at #41839 which deals with port gcr and its X11 only problems, the report to the upstream developers and their reply. -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by m.rick@…): Replying to [comment:3 devans@…]:
As an example take a look at #41839 which deals with port gcr and its X11 only problems, the report to the upstream developers and their reply.
Hi ! Well … I got it working with quartz ! That wasn't easy though … These are the detailed steps to reproduce, this precise order must be respected exactly. I tried several times with different combinations before getting the right one. It was very long and took me all day for this one. There are 2 parts. The first part is to build Glom with X11 and all its dependency normally. 1 - port install python27 (bzip2 db46 db_select gettext expat libiconv ncurses libedit openssl zlib python_select sqlite3) 2 - port install gnome-desktop (desktop-file-utils glib2 libffi pkgconfig popt gnome-common gnome-themes- standard gtk2 atk gobject-introspection cairo fontconfig freetype libpng libpixman xorg-libXext xorg-libX11 xorg-bigreqsproto xorg-inputproto xorg- kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-libxcb xorg-libpthread- stubs xorg-xcb-proto libxml2 xorg-util-macros xorg-xcmiscproto xorg- xextproto xorg-xf86bigfontproto xorg-xtrans xorg-xcb-util xrender xorg- renderproto gdk-pixbuf2 jasper jpeg tiff gtk-doc docbook-xml docbook- xml-4.1.2 docbook-xml-4.2 xmlcatmgr docbook-xml-4.3 docbook-xml-4.4 docbook-xml-4.5 docbook-xml-5.0 docbook-xsl fop itstool gawk readline py27-libxml2 libxslt openjade opensp vim hicolor-icon-theme pango Xft2 harfbuzz graphite2 cmake curl curl-ca-bundle libidn libarchive lzo2 shared-mime-info intltool p5.16-getopt-long p5.16-pathtools p5.16-scalar- list-utils p5.16-xml-parser xorg-libXcomposite xorg-compositeproto xorg- libXfixes xorg-fixesproto xorg-libXcursor xorg-libXdamage xorg-damageproto xorg-libXi xorg-libXinerama xorg-xineramaproto xorg-libXrandr xorg- randrproto gtk3 at-spi2-atk at-spi2-core dbus dbus-glib xorg-libXevie xorg-evieproto xorg-libXtst xorg-recordproto xorg-libice xorg-libsm dbus- python27 librsvg libcroco vala gsettings-desktop-schemas gsed iso-codes xkeyboard-config xkbcomp xorg-libxkbfile) 3 - port install yelp (gnome-getting-started-docs gnome-icon-theme icon-naming-utils p5.16-xml- simple p5.16-xml-namespacesupport p5.16-xml-sax p5.16-xml-sax-base p5.16 -xml-sax-expat gnome-icon-theme-symbolic gnome-settings-daemon geoclue2 gpsd scons json-glib libsoup glib-networking gnutls gmp libtasn1 nettle p11-kit gsettings-desktop-schemas gsed libproxy geocode-glib gnome-desktop iso-codes xkeyboard-config xkbcomp xorg-libxkbfile lcms2 libcanberra gstreamer1 bison flex gzip texinfo help2man p5.16-locale-gettext libvorbis libogg libgweather libnotify pulseaudio fftw-3-single fftw-3 json-c libsamplerate libsndfile flac orc speex upower policykit gnome-doc-utils rarian getopt gnome-user-docs webkit-gtk3 enchant aspell hunspell geoclue gmake gstreamer1-gst-plugins-base libtheora xorg-libXv xorg-videoproto harfbuzz-icu icu libsecret libgcrypt libgpg-error mesa makedepend xorg- dri2proto xorg-glproto xorg-libXmu xorg-libXt webp yelp-xsl) 4 - port install … databases (postresql93 + mysql55) This step is optional since it will be done automatically with the next step. I didn't use it though. 5 - port install glom (boost doxygen evince libspectre ghostscript jbig2dec libpaper poppler openjpeg15 jbigkit poppler-data t1lib texlive-bin libzzip xmlto coreutils findutils texlive-common xorg-libXaw groff netpbm psutils xpm xorg-libXp xorg-printproto yelp-tools gnome-keyring gcr gnupg libusb-compat libusb openldap cyrus-sasl2 kerberos5 libcomerr tcp_wrappers goocanvasmm2 goocanvas2 py27-gobject3 py27-cairo py27-numpy py27-nose nosetests_select py27-setuptools gtkmm3 atkmm glibmm libsigcxx2 mm-common wget pcre cairomm pangomm graphviz gd2 libvpx yasm gts libLASi urw-fonts gtksourceviewmm3 gtksourceview3 libepc avahi libdaemon libglade2 py27-gdbm py27-pygtk py27-gobject ossp-uuid libgda5 db51 postgresql93 postgresql_select libgdamm5 libxmlxx2 py27-sphinx py27-docutils py27-roman py27-jinja2 py27-markupsafe py27-pygments sphinx_select) This is the end of the first step. At this moment you can launch glom as well and it'll run perfectly with X11 or XQuartz intalled. Second step to get Quartz options. It is tricky. 1 - port clean -f gtk3 2 - port clean -f glom 3 - port uninstall -f gtk3 4 - port install -f cairo +quartz Here it'll rebuild everything even GTK3, but just don't care go ahead with the following steps anyway. 5 - port install -f pango +quartz 6 - port install -f gtk3 +quartz 7 - port install -f cairomm +quartz 8 - port install -f pangomm +quartz 9 - port install -f gtkmm3 +quartz 10 - port install -f glom +quartz Here you are! Enjoy! I don't know if you close or leave open the ticket. [[Image(http://imagizer.imageshack.us/v2/150x100q90/904/6k39gb.png)]][http://imageshack.com/f/p46k39gbp] -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by devans@…): OK, so what happens now when you select Help->Contents with glom? -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by m.rick@…): Replying to [comment:5 devans@…]:
OK, so what happens now when you select Help->Contents with glom? It's not working, of course, a message is displayed saying that it is not supported.
But … When I was trying the X11 version, Yelp was launching if I launched it manually, but getting help from Glom i got the same error message … So … The same happens with Gnumeric. The idea on Mac OS X would be to use the built-in Help, dunno how to do though. I did a script once for Gimp, but I can't manage to get it back. Gimp use a different system to call the help service. But a shell script called Yelp and calling the Mac OS X help should work. The help files must be indexed first with Help Indexer, it can open HTML or PDF. I downloaded the helps files from Gnuemric with a wen sniffer, used Help Indexer to index the folder, and opened nicely the root index file in Help with all the links working. Anyway, all the Yelp decencies à useless. The final port is 4 Gb large, but ¾ of them are useless. I use esoteric paths for my builds when they are working in the way of the Bottles for Wines or CrossOver. Like this the ports are not conflicting together. -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by m.rick@…): Some news Well, launching the application from a 10.6 ~ or 10.7 Mac OS, you will need to create a script and set LANG=C With 10.9 no need to use it and works out of the box. There are a few bugs, but the software remains highly usable. The theme is Gnome-Cupertino but it's not very beautiful, but at least it is easier to use than the native one despite of a bug with the windows bar. Just missing the native OS X menus, but I don't how to do this part. [[Image(https://imagizer.imageshack.us/v2/779x487q90/912/pm9Zdk.png)]] [[Image(https://imagizer.imageshack.us/v2/779x487q90/538/3yoMUt.png)]] -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by wdc@…): Does this mean that there is a well-established substitute for yelp that can, for example, be incorporated into meld? meld works fine under quartz (except for no help capability) if you disable yelp. -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
#44616: Glom will not build with +quartz option -----------------------+----------------------- Reporter: m.rick@… | Owner: landonf@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: glom | -----------------------+----------------------- Comment (by m.rick@…): This is just a simple shell script I wrote and called Yelp I put in the Bin folder. It also tests the language settings. But I had to extract the help from the website because it is in HTML, the provided one is in an XML format and Mac OS X help is unable to read this format. Once done, it is is necessary to index the help folder with a little software called Help Indexer.app provided by Apple. It can be used for any GTK apps as well, excepting GIMP which something specific, but maybe it can be done with some tricks, but does work well with Gnumeric too. {{{ #!/bin/sh # #Use native Mac OS X Help in GTK softwares name=$(basename "$0") echo $name dirn=$(dirname "$0") echo $dirn bundle=$(cd "$dirn/../../" && pwd) bundle_res="$bundle/Resources" HelpViewer="/System/Library/CoreServices/HelpViewer.app/Contents/MacOS/HelpViewer" help="$bundle_res/share/help" locale=$LANG short=${locale:0:2} locale=$short if [ -d /$help/$locale ] then $HelpViewer $help/$locale/index.html else $HelpViewer $help/en/index.html fi #$HelpViewer $help/$locale/index.html else $HelpViewer $help/en/index.html }}} -- Ticket URL: <https://trac.macports.org/ticket/44616#comment:11> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts