Bug#739490: iceweasel: compiled extensions can not be built with version in wheezy-sec

Raphael Geissert geissert at debian.org
Wed Mar 5 10:49:27 UTC 2014

On 24 February 2014 09:58, Mike Hommey <mh at glandium.org> wrote:
> On Wed, Feb 19, 2014 at 10:33:09AM +0100, Raphael Geissert wrote:
>> Package: iceweasel
>> Version: 24.3.0esr-1~deb7u1
>> Severity: important
>> Hi,
>> As mentioned in a private email, binary extensions fail to build with
>> the backported iceweasel/xulrunner in wheezy-sec, but they do build
>> with the version in sid. An example that is easy to try is
>> mozilla-gnome-keyring.
>> It fails to find the mozilla-nspr pkg-config file, which results in a
>> series of missing files and the build failure. There's also a "cannot
>> find -lmozglue" error from the linker.
> Can you try this patch:

It can not find prtime.h this time, attached is the relevant part of
the build log plus the output of pkg-config.

Raphael Geissert - Debian Developer
www.debian.org - get.debian.net
-------------- next part --------------
 dpkg-source --before-build mozilla-gnome-keyring-0.6.9
 debian/rules clean
test -x debian/rules
make -C debian -f Makefile.combined clean-all
make[1]: Entering directory `/tmp/mozilla-gnome-keyring-0.6.9/debian'
rm -rf link-xulrunner xpi-xulrunner link-icedove xpi-icedove xpi
rm -f ../mozilla-gnome-keyring-0.6.9.xpi
cd .. && make -f Makefile clean-all
make[2]: Entering directory `/tmp/mozilla-gnome-keyring-0.6.9'
rm -f libgnomekeyring.so
rm -f mozilla-gnome-keyring-0.6.9.xpi
rm -f -r xpi
rm -f *.xpi
rm -f *.tar.gz
rm -f config.vars xpcom_abi
make[2]: Leaving directory `/tmp/mozilla-gnome-keyring-0.6.9'
make[1]: Leaving directory `/tmp/mozilla-gnome-keyring-0.6.9/debian'
 debian/rules build
test -x debian/rules
mkdir -p "."
make -C debian -f Makefile.combined all
make[1]: Entering directory `/tmp/mozilla-gnome-keyring-0.6.9/debian'
mkdir -p "link-xulrunner" && make -C "link-xulrunner" -f ../../Makefile VPATH=../.. \
make[2]: Entering directory `/tmp/mozilla-gnome-keyring-0.6.9/debian/link-xulrunner'
CXX="g++" XUL_CFLAGS="`pkg-config --cflags libxul`" XUL_LDFLAGS="`pkg-config --libs libxul`" XPCOM_ABI_FLAGS="`pkg-config --libs-only-L libxul | sed -e 's/-L\(\S*\).*/
-Wl,-rpath=\1/' | sed -n -e 'p;s/^\(.*\)-devel\(.*\)\/lib$/\1\2/gp'`" GNOME_CFLAGS="`pkg-config --cflags gnome-keyring-1`" GNOME_LDFLAGS="`pkg-config --libs gnome-keyr
ing-1`" CXXFLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -fno-rtti -fno-exceptions -fPIC -std=gnu++0x -D__STDC_LIMIT
_MACROS" LDFLAGS="-Wl,-z,relro " sh ../../config.sh ../../GnomeKeyring.h ../../xpcom_abi.cpp ../../Makefile > config.vars
In file included from /usr/include/xulrunner-24.0/nsISupports.h:10:0,
                 from /usr/include/xulrunner-24.0/nsILoginManagerStorage.h:10,
                 from ../../GnomeKeyring.h:40,   
                 from <stdin>:1:
/usr/include/xulrunner-24.0/nsrootidl.h:14:20: fatal error: prtime.h: No such file or directory
compilation terminated.
In file included from /usr/include/xulrunner-24.0/nsISupports.h:10:0,
                 from /usr/include/xulrunner-24.0/nsIXULRuntime.h:10,
                 from ../../xpcom_abi.cpp:4:
/usr/include/xulrunner-24.0/nsrootidl.h:14:20: fatal error: prtime.h: No such file or directory
compilation terminated.
make[2]: *** [config.vars] Error 1
make[2]: Leaving directory `/tmp/mozilla-gnome-keyring-0.6.9/debian/link-xulrunner'
make[1]: *** [link-xulrunner] Error 2
make[1]: Leaving directory `/tmp/mozilla-gnome-keyring-0.6.9/debian'
make: *** [build/xul-ext-gnome-keyring] Error 2

$ pkg-config --libs libxul
-L/usr/lib/xulrunner-devel-24.0/lib -lxpcomglue_s -lxul -lmozalloc -lplds4 -lplc4 -lnspr4 -lpthread -ldl

To be more precise:

$ pkg-config --libs mozilla-nspr
-L/usr/lib/xulrunner-devel-24.0/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl

More information about the pkg-mozilla-maintainers mailing list