Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#65407 closed defect (fixed)

librsvg @2.40.20_5: build fails on darwin 9, previous revision didn't

Reported by: kakuhen Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: pending Cc:
Port: librsvg

Description

librsvg @2.40.20_4 is successfully installed on my Power Mac G5 running OS X 10.5.8

This current revision seems to have broken the vala build process; below is the relevant snippet from logs.

:info:build GdkPixbuf-2.0.gir:6382.55-6382.55: error: The symbol `GModule' could not be found
:info:build  6382 |         <type name="GModule.Module" c:type="GModule*"/>
:info:build       |                                                       ^
:info:build Generation failed: 1 error(s), 13 warning(s)

Attached to this ticket is the full main.log

Attachments (1)

main.log (1.0 MB) - added by kakuhen 2 years ago.

Download all attachments as: .zip

Change History (12)

Changed 2 years ago by kakuhen

Attachment: main.log added

comment:1 Changed 2 years ago by mascguy (Christopher Nielsen)

Keywords: pending added

comment:2 Changed 2 years ago by barracuda156

Identical failure on Rosetta:

:info:build GdkPixbuf-2.0.gir:6382.55-6382.55: error: The symbol `GModule' could not be found
:info:build  6382 |         <type name="GModule.Module" c:type="GModule*"/>
:info:build       |                                                       ^
:info:build Generation failed: 1 error(s), 13 warning(s)
:info:build make[2]: *** [librsvg-2.0.vapi] Error 1
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_librsvg/librsvg/work/librsvg-2.40.20'
:info:build make[1]: *** [all-recursive] Error 1

comment:4 in reply to:  1 Changed 2 years ago by barracuda156

Replying to mascguy:

A similar error reported here: https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/issues/193

But is also can be the case that vapigen is broken for PPC, which I hold is the case. Upstream ignores the problem: https://gitlab.gnome.org/GNOME/vala/-/issues/1297

comment:5 Changed 2 years ago by kencu (Ken)

in your stacktrace, I notice vala is hanging just after calling posix_memalign… https://gitlab.gnome.org/GNOME/vala/-/issues/1297

systems < 10.6 don’t have posix_memalign, so I wrote a best-effort workalike using what Tiger and Leopard did have, and put it in legacysupport. It is not the same as what 10.6+ has, though, and it’s possible that is the source of this hang. You might look into the vala code and see if you can try a different workaround for posix_memalign instead.

the other thought is that it has something to do with trying to free the wrong memory, ie a variation on the libstdc++ “unaligned pointer being freed” issue we have not solved yet…

Last edited 2 years ago by kencu (Ken) (previous) (diff)

comment:6 Changed 2 years ago by kencu (Ken)

upstream wanted you to run the vala test suite, I notice… without doing at least that, I doubt they will reply further. Nobody there will have an old powermac to play with.

comment:7 Changed 2 years ago by johnrosshunt

I get an identical error building librsvg on 10.5 Intel. So, I tried the vala test suite and ALL the tests failed. That's because there's an upstream typo in build-aux/testrunner.sh. On line 193 change ';&' to ';;' and it will run properly. Under leopard about half the vala tests still failed. Building vala again with MacPorts clang-9.0 results in approximately 30-something tests failing -- most pertaining to DBUS. With over 1000 tests in the suite, that's pretty good. But, librsvg still wouldn't build for me. So, I looked at gdk-pixbuf2 and saw this:

$ sudo gdk-pixbuf-query-loaders --update-cache
gdk-pixbuf-query-loaders(89918) malloc: *** error for object 0xa0107240: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
gdk-pixbuf-query-loaders(89918) malloc: *** error for object 0xa01071c0: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug

Could this be the problem?

comment:8 in reply to:  7 Changed 2 years ago by barracuda156

Replying to johnrosshunt:

I get an identical error building librsvg on 10.5 Intel. So, I tried the vala test suite and ALL the tests failed. That's because there's an upstream typo in build-aux/testrunner.sh. On line 193 change ';&' to ';;' and it will run properly. Under leopard about half the vala tests still failed. Building vala again with MacPorts clang-9.0 results in approximately 30-something tests failing -- most pertaining to DBUS. With over 1000 tests in the suite, that's pretty good. But, librsvg still wouldn't build for me. So, I looked at gdk-pixbuf2 and saw this:

$ sudo gdk-pixbuf-query-loaders --update-cache
gdk-pixbuf-query-loaders(89918) malloc: *** error for object 0xa0107240: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug
gdk-pixbuf-query-loaders(89918) malloc: *** error for object 0xa01071c0: Non-aligned pointer being freed (2)
*** set a breakpoint in malloc_error_break to debug

Could this be the problem?

This also happens on PPC: #66159

Last edited 2 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:10 Changed 2 years ago by kencu (Ken)

Resolution: fixed
Status: assignedclosed

In d50c5142902af4c3fcad0868446a185b33f2b40a/macports-ports (master):

librsvg: fix build on older systems

fallback librsvg had a missing vapi dep
closes: #65407

comment:11 Changed 2 years ago by kencu (Ken)

the gdk-pixbuf2 malloc errors are handled here:

https://github.com/macports/macports-ports/pull/16901

Note: See TracTickets for help on using tickets.