[MacPorts] #52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ------------------------+-------------------------------- Reporter: braumann@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: | Port: adwaita-icon-theme ------------------------+-------------------------------- While upgrading adwaita-icon-theme from 3.20_0 to 3.22.0_0 on 10.5.8 PPC staging into destroot fails with this trouble: {{{ ... :info:destroot for file in `cd ../../Adwaita/scalable; find . -name "*.svg"`; do \ :info:destroot context="`dirname $file`"; \ :info:destroot /opt/local/bin/gmkdir -p /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/scalable/$context; \ :info:destroot /bin/sh /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon-theme/work /adwaita-icon-theme-3.22.0/install-sh -c -m 644 ../../Adwaita/scalable/$file /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/scalable/$file; \ :info:destroot for size in 16x16 24x24 32x32 48x48 64x64 96x96; do \ :info:destroot /opt/local/bin/gmkdir -p /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/$size/$context; \ :info:destroot /opt/local/bin/gtk-encode-symbolic-svg ../../Adwaita/scalable/$file $size -o /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/$size/$context; \ :info:destroot done \ :info:destroot done :info:destroot Can't load file: Unrecognized image file format ... :info:destroot Can't load file: Unrecognized image file format :info:destroot make[3]: *** [install-data-local] Error 1 :info:destroot make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon-theme/work /adwaita-icon-theme-3.22.0/src/symbolic' :info:destroot make[2]: *** [install-am] Error 2 ... }}} Any ideas what kind of SVG incompatibility causes the problem? -- Ticket URL: <https://trac.macports.org/ticket/52605> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Changes (by mf2k@…): * cc: devans@… (removed) * owner: macports-tickets@… => devans@… -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:1> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Changes (by devans@…): * status: new => assigned Comment: No, but I'll check now that I have access to an appropriate machine to test. The port builds fine on all other ports so it's almost certainly a 10.5 ppc specific issue. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:2> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Well it built fine for me. So something different on your end. Are you using a standard build environment, compilers, etc or are you doing something different? Which version of Xcode is installed? and finally which version of gtk3. It's a utility provided by gtk3 that is processing svg files into icons that's running when you fail. I did a test build using MacOS 10.5.8 PPC[[BR]] Xcode 3.1.4[[BR]] Component versions: DevToolsCore-1204.0; DevToolsSupport-1186.0[[BR]] BuildVersion: 9M2809[[BR]] gtk3 @3.20.9[[BR]] Using gtk3 3.20.9 because gtk3 3.22.0+ doesn't build on this machine. Maybe you should try making a clean build of adwaita-icon-theme in case something got damaged in your distfile {{{ sudo port clean --all adwaita-icon-theme sudo port -d build adwaita-icon-theme }}} -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:3> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Thanks. have the same configuration (but for some reason I actually have `gtk3 @3.22.1_0` on PPC, should I better reactivate `3.20.9_0`?), have issued `sudo port -f clean --all installed`, the build command for adwaita-icon-theme works, but this was not the issue, it previously failed while staging into destroot. Presently I wait what comes out after issuing `sudo port upgrade adwaita-icon-theme`, I will let you know. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:4> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Unfortunately, neither extensive cleaning nor reactivating `gtk3 @3.20.9_0` helped, the problem still persists as described above. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:5> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): I don't know what to tell you. The only reason I am using gtk3 @3.20.9_0 is because it won't build for me or Ken Cunningham either. So if you can build gtk @3.22.1 then go ahead and use it. But adwaita-icon-theme builds fine for me. Wish I could find out why this builds for some and not others. For details on the gtk3 @3.22.1 build problem see #52468. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:6> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Replying to [comment:6 devans@…]:
I don't know what to tell you. ...
For the moment I see that `gtk-encode-symbolic-svg` is broken: {{{ $ /opt/local/bin/gtk-encode-symbolic-svg /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/scalable/actions/zoom- out-symbolic.svg 96x96 -o /tmp Can't load file: Unrecognized image file format }}} Even previously installed SVG files cannot be handeled: {{{ $ /opt/local/bin/gtk-encode-symbolic-svg /opt/local/share/icons/Adwaita/scalable/actions/zoom-out-symbolic.svg 96x96 -o /tmp/ Can't load file: Unrecognized image file format }}} So my guess is that something is wrong with `librsvg`: {{{ $ sudo port installed librsvg The following ports are currently installed: librsvg @2.40.16_0+viewer (active) }}} Under [https://forums.gentoo.org/viewtopic-t-1007626-start-0.html] someone was pretty much facing the same problem with `adwaita-icon-theme` like me. The solution apparently was to add some `tools` flag when building `librsvg`. I would be happy if you could have a look at this. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:7> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Replying to [comment:7 braumann@…]:
Replying to [comment:6 devans@…]:
I don't know what to tell you. ...
For the moment I see that `gtk-encode-symbolic-svg` is broken:
{{{ $ /opt/local/bin/gtk-encode-symbolic-svg /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports .org_release_ports_gnome_adwaita-icon-theme/adwaita-icon- theme/work/destroot/opt/local/share/icons/Adwaita/scalable/actions/zoom- out-symbolic.svg 96x96 -o /tmp Can't load file: Unrecognized image file format }}}
Even previously installed SVG files cannot be handeled:
Good indication that there is nothing wrong with the svg files but with the processing.
{{{ $ /opt/local/bin/gtk-encode-symbolic-svg
/opt/local/share/icons/Adwaita/scalable/actions/zoom-out-symbolic.svg 96x96 -o /tmp/
Can't load file: Unrecognized image file format }}}
So my guess is that something is wrong with `librsvg`:
{{{ $ sudo port installed librsvg The following ports are currently installed: librsvg @2.40.16_0+viewer (active) }}}
I note that +viewer is not the default build so this could be an issue. Not sure why, but it is a difference from a "default" build. Try sudo port install librsvg to install a default build. This should build without any variants.
Under [https://forums.gentoo.org/viewtopic-t-1007626-start-0.html]
someone
was pretty much facing the same problem with `adwaita-icon-theme` like me. The solution apparently was to add some `tools` flag when building `librsvg`. I would be happy if you could have a look at this.
Glad to do it. Reading now. Dave -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:8> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Thanks, have now a `librsvg` version without `+viewer`, but got no functional `gtk-encode-symbolic-svg`: {{{ $ sudo port -s install librsvg ... ---> No broken files found. $ sudo port installed librsvg The following ports are currently installed: librsvg @2.40.16_0 (active) librsvg @2.40.16_0+viewer $ gtk-encode-symbolic-svg /opt/local/share/icons/Adwaita/scalable/actions /zoom-out-symbolic.svg 96x96 -o /tmp Can't load file: Unrecognized image file format }}} Perhaps you have got some idea what's with the `tools` flag for `librsvg`? -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:9> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Ok, here's my progress report. First let me say I've never used gentoo and I'm not familiar with their build system but the following is what I think that post is about. The "tools flag" that they are talking about is an attibute of their build system, flag being roughly equivalent to variant in MacPorts. So it appears that the gentoo default build includes the flag -tools, that is, with out the tools. Rebuilding with +tools fixed their problem. With respect to librsvg, there is a configuration flag: {{{ --disable-tools do not build miscellaneous tools [default=no] }}} that is, the default for librsvg is to build the tools. In our port, we don't assert --disable-tools and so the tools are built and installed by default. You can check with {{{ port contents librsvg | grep bin }}} The tools are two small utility programs rsvg-convert and svg2pdf, which, as far as I can tell are not used by gtk-encode-symbolic-svg. However, the other thing they talk about is the svg gdk-pixbuf loader provided by librsvg. This is, specifically, {{{ ${prefix}/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so }}} which is provided by librsvg and provides support for loading svg images as GdkPixbufs. This is getting closer to something that sounds like our failure message. So again check and make sure it is installed as part of the contents of librsvg. {{{ port contents librsvg | grep loaders }}} I'm looking into this further on this end. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:10> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): What does {{{ port installed gdk-pixbuf2 }}} return? -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:11> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Thanks, I did the checks: {{{ $ sudo port contents librsvg | grep bin /opt/local/bin/rsvg-convert /opt/local/bin/svg2pdf }}} So the two utilities are present. {{{ $ sudo port contents librsvg | grep loaders /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.la /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so }}} So two library variants for the loader are present. {{{ $ sudo port installed gdk-pixbuf2 The following ports are currently installed: gdk-pixbuf2 @2.36.0_0+x11 (active) }}} This indicates the newest version of `gdk-pixbuf2` is available. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:12> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Replying to [comment:12 braumann@…]:
{{{ $ sudo port contents librsvg | grep loaders /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.la /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so }}} So two library variants for the loader are present.
This doesn't look right. If I remember correctly the current version of base automatically removes .la files from destroot if installed there. I don't see it in my installation just the .so file. Questions: * if you forceably deactivate librsvg is the .la file still there? {{{ sudo port -f deactivate librsvg }}} * if so you can remove it {{{ sudo rm /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader- svg.la }}} * now activate librsvg again. Is the .la file there again or not? {{{ sudo port activate librsvg }}} * if it is, remove it again anyway and see if the problem is fixed * if it isn't, it was left over from something in the past, see if the problem is fixed -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:13> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Replying to [comment:4 braumann@…]:
Thanks. have the same configuration (but for some reason I actually have `gtk3 @3.22.1_0` on PPC
Was this a standard default build or did you use a non-standard compiler (like gcc6) to build gtk3? -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:14> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Replying to [comment:14 devans@…]:
Replying to [comment:4 braumann@…]:
Thanks. have the same configuration (but for some reason I actually have `gtk3 @3.22.1_0` on PPC
Was this a standard default build or did you use a non-standard compiler (like gcc6) to build gtk3? To be honest, I cannot remember. Maybe I took gcc5, which usually is my first option once some c++ trouble is visible in the log file. Is there a way to check afterwards what compiler has been used?
-- Ticket URL: <https://trac.macports.org/ticket/52605#comment:15> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Replying to [comment:13 devans@…]:
... Thanks, my impression is that the `libpixbufloader-svg.la` library is not a leftover. After deactivation of `librsvg` it disappeared (the .so as well), and both came back when I activated `librsvg` again. BTW, all such `libpixbufloader*` libraries have these double variants:
{{{ $ ll /opt/local/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-<TAB> libpixbufloader-ani.la libpixbufloader-png.so libpixbufloader-ani.so libpixbufloader-pnm.la libpixbufloader-bmp.la libpixbufloader-pnm.so libpixbufloader-bmp.so libpixbufloader-qtif.la libpixbufloader-gif.la libpixbufloader-qtif.so libpixbufloader-gif.so libpixbufloader-svg.la libpixbufloader-icns.la libpixbufloader-svg.so libpixbufloader-icns.so libpixbufloader-tga.la libpixbufloader-ico.la libpixbufloader-tga.so libpixbufloader-ico.so libpixbufloader-tiff.la libpixbufloader-jasper.la libpixbufloader-tiff.so libpixbufloader-jasper.so libpixbufloader-xbm.la libpixbufloader-jpeg.la libpixbufloader-xbm.so libpixbufloader-jpeg.so libpixbufloader-xpm.la libpixbufloader-png.la libpixbufloader-xpm.so }}} All have almost identical time stamps. Manually removing `libpixbufloader-svg.la` did not fix the problem :-( -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:16> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Replying to [comment:15 braumann@…]:
Replying to [comment:14 devans@…]:
Replying to [comment:4 braumann@…]:
Thanks. have the same configuration (but for some reason I actually have `gtk3 @3.22.1_0` on PPC
Was this a standard default build or did you use a non-standard compiler (like gcc6) to build gtk3? To be honest, I cannot remember. Maybe I took gcc5, which usually is my first option once some c++ trouble is visible in the log file. Is there a way to check afterwards what compiler has been used?
You may be able to get a hint by using `otool` and looking to see which run time is used. Or you can just try rebuilding using the standard compiler selection. I'd recommend the latter. Note that once you use something other the default compiler, you're on your own. At any rate, please report any information you have about building gtk3 to #52468 where the issue of building a default build on leopard ppc is being discussed. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:17> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…):
All have almost identical time stamps.
Manually removing `libpixbufloader-svg.la` did not fix the problem :-(
Good news, I guess: not the problem, although, the installation of the .la files is different from what I see on my system. -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:18> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): While you were testing, I looked into the `gtk-encode-symbolic-svg` code. This utility converts svg icon files to specially encoded png files that have many of the properties (color substitution, for example) as svg but with much less processing overhead. `gtk-encode-symbolic-svg` uses the following code to read the svg into an in-memory GdkPixbuf: {{{ loaded = load_symbolic_svg (file_data, file_len, width, height, &g, plane == 0 ? &r : &g, plane == 1 ? &r : &g, plane == 2 ? &r : &g, error); if (loaded == NULL) return NULL; }}} and `load_symbolic_svg` uses the following code to do the work {{{ stream = g_memory_input_stream_new_from_data (data, -1, g_free); pixbuf = gdk_pixbuf_new_from_stream_at_scale (stream, width, height, TRUE, NULL, error); }}} Error handling here is what I would call "minimum magnificent"! If gdk_pixbuf_new_from_stream_at_scale returns an error it is propagated upstream without checks to the main caller which then prints the message we're seeing if an error is set without check which error it is. Possible errors are those in the GDK_PIXBUF_ERROR domain {{{ GDK_PIXBUF_ERROR_CORRUPT_IMAGE An image file was broken somehow. GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY Not enough memory. GDK_PIXBUF_ERROR_BAD_OPTION A bad option was passed to a pixbuf save module. GDK_PIXBUF_ERROR_UNKNOWN_TYPE Unknown image type. GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION Don't know how to perform the given operation on the type of image at hand. GDK_PIXBUF_ERROR_FAILED Generic failure code, something went wrong. GDK_PIXBUF_ERROR_INCOMPLETE_ANIMATION Only part of the animation was loaded. }}} and in the G_IO_ERROR domain (too many to list here) but some sort of GIO stream error is a possibility. Lots of possibilities. Can you run `gtk-encode-symbolic-svg` under gdb with a breakpoint at `load_symbolic_svg` and step from there to see what error is really being returned? To do this sensibly, one would need to build at least gtk3 and gdk-pixbuf2 with debugging symbols enabled and without cleaning after the build so that the source code is still available for reference. You can do this using the following commands: {{{ sudo port -nsk upgrade --force gdk-pixbuf2 'configure.optflags='-g -O0' sudo port -nsk upgrade --force gtk3 'configure.optflags='-g -O0' }}} So the question is: what is what error is being returned by `load_symbolic_svg`? -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:19> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by braumann@…): Thanks a lot for your research, I have also thought about looking into the sources of this funny program. Well, I need to postpone my "homework", as I need to travel for a few days, unfortunately without my beloved PowerBook G4. Also, it was decades ago that I was using `gdb`. BTW, I guess `load_symbolic_svg` is returning NULL in case of any error? Also, as I will need to rebuild `gtk3` I expect to face trouble. Oh, don't you think I better should use `install` for the two commands recommended above? -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:20> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52605: adwaita-icon-theme @3.22.0 fails building on 10.5.8 PPC ---------------------------------+---------------------- Reporter: braumann@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: adwaita-icon-theme | ---------------------------------+---------------------- Comment (by devans@…): Replying to [comment:20 braumann@…]:
Thanks a lot for your research, I have also thought about looking into the sources of this funny program. Well, I need to postpone my "homework", as I need to travel for a few days, unfortunately without my beloved PowerBook G4. Also, it was decades ago that I was using `gdb`.
BTW, I guess `load_symbolic_svg` is returning NULL in case of any error?
Yes, and that's all they pay attention to. A better approach at this point would be to inspect the error structure to see what the error is before proceeding.
Also, as I will need to rebuild `gtk3` I expect to face trouble. Oh, don't you think I better should use `install` for the two commands recommended above?
I was assuming that you already had a copy of the current version of gtk3 installed without the debugging symbols. In that case, install will build but not install because it thinks, it's all ready installed. So upgrade works in that case. If old version or nothing installed you should use install. The flags are as follows: -n upgrade just this port and not its dependencies -s force a build from source; don't use archived binary if available -k don't clean after install/update if finished; this leaves the source in place for reference from gdb --force update and replace the currently installed version even if it's the same version as what I'm building Of course, -g turns on debug symbols, -O0 disables all optimizations which can get in your way while debugging. You don't want anything optimized out of existence! See you when you get back. Dave -- Ticket URL: <https://trac.macports.org/ticket/52605#comment:21> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
participants (1)
-
MacPorts