Closed Bug 1080654 Opened 11 years ago Closed 10 years ago

xulrunner GTK+ 3 build on Ubuntu produces libxul.so/libmozgtk.so that don't depend on GTK+ itself (libmozgtk.so doesn't depend on anything); fails at load time searching for gtk_main_do_event()

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1063359

People

(Reporter: pietro10, Unassigned)

Details

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0 Build ID: 20141004131321 Steps to reproduce: $ hg clone https://hg.mozilla.org/mozilla-central/ xulrunner $ cd xulrunner $ cat > mozconfig ac_add_options --enable-application=xulrunner ac_add_options --enable-default-toolkit=cairo-gtk3 $ ./mach build $ sudo ./mach install This is on an up-to-date Ubuntu 14.10 amd64 prerelease install. Actual results: The output of make install is http://pastie.org/9634588 The output of readelf -d libxul.so is http://pastie.org/9634582 The output of readelf -d libmozgtk.so is http://pastie.org/9634585 Expected results: A successful install. Either libxul.so or libmozgtk.so should be linking to libgtk.so. (Thanks to glandium in irc.mozilla.org/#build for help.)
Here is what's happening: - There is logic in widget/gtk/mozgtk/gtk3/moz.build to surround gtk-3 libs with -Wl,--no-as-needed/-Wl,--as-needed - That logic makes those flags used when -Wl,--as-needed is detected in the LDFLAGS. - Ubuntu's compiler defaults to -Wl,--as-needed (or is it the linker?). So we need a configure test instead of checking in the moz.build whether -Wl,--as-needed was explicitly passed. The good news is that this makes for an easy workaround: set LDFLAGS such that it contains -Wl,--as-needed.
Yep, I can confirm that explicitly adding --as-needed worked for installing.
Status: UNCONFIRMED → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.