Opened 6 years ago

Closed 5 years ago

#58451 closed defect (fixed)

p5.28-gtk3 @0.34.0 Warning Fail to load shared library 'libcairo-gobject.2.dylib'

Reported by: nortcele Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: p5-gtk3

Description

When trying to use GTK3 with perl 5, there is allway a warning about a failure to load shared library 'libcairo-gobject.2.dylib'.

To reproduce: With a fresh installation of MacPorts.

sudo port install p5.28-gtk3

Once installed, try to use GTK3.

/opt/local/bin/perl5.28 -e "use Gtk3;"

You get the following warning.

WARNING **: Failed to load shared library 'libcairo-gobject.2.dylib' referenced by the typelib: dlopen(libcairo-gobject.2.dylib, 9): image not found at /opt/local/lib/perl5/vendor_perl/5.28/Gtk3.pm line 479.

One way to circunvent the warning and use cairo introspection is to help perl to find the library with:

export DYLD_FALLBACK_LIBRARY_PATH=/opt/local/lib ; /opt/local/bin/perl5.28 -e "use Gtk3;"

But this shouldn't be necessary.

I can't say exacty if the problem comes from p5-gtk3, p5-cairo-gobject, p5-glib-object-introspection or elsewhere.

Change History (2)

comment:1 Changed 6 years ago by mf2k (Frank Schima)

Owner: set to dbevans
Port: p5-gtk3 added; gtk3 removed
Status: newassigned

comment:2 Changed 5 years ago by dbevans (David B. Evans)

Resolution: fixed
Status: assignedclosed

In 6e997db1ff671f2b85f474d48389b8feb0efc5c1/macports-ports (master):

gobject-introspection: fix configuration of CAIRO_SHARED_LIBRARY

Since we are now using autoreconf, patch configure.ac rather than
configure when resetting the install name of libcairo-gobject to its full installed path
in generated introspection files (.gir, .typelib).

This is necessary for the loader to find the shared library which is installed
in a non-standard location.

Fixes #58451
Closes #58622

Note: See TracTickets for help on using tickets.