# firefox crash when d/l begins - [SOLVED]

## JaquesStrap

Anytime I try to d/l something, Firefox crashes with the following error:

```

/usr/lib/mozilla-firefox/firefox-bin: symbol lookup error: /usr/lib/libgnomevfs-2.so.0: undefined symbol: xmlNewTextReaderFilename

firefox-bin exited with non-zero status (127)

```

This error happens with all uses on the system, including new ff profiles.

Version www-client/mozilla-firefox-2.0.0.14

Suggestions appreciated.Last edited by JaquesStrap on Sun Jun 01, 2008 10:20 pm; edited 1 time in total

----------

## pappy_mcfae

It looks like you have a broken dependency. Try running revdep-rebuild. That should find it and recompile the offending package(s).

Blessed be!

Pappy

----------

## JaquesStrap

Thanks for the suggestion Pappy. revdep-rebuild reveals that I have a  consistent system. The problem persists. Starting to think it's a USE flag maybe?

```

 emerge --info mozilla-firefox

Portage 2.1.4.4 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo-r3 i686)

=================================================================

                        System Settings

=================================================================

System uname: 2.6.24-gentoo-r3 i686 Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz

Timestamp of tree: Fri, 25 Apr 2008 17:00:01 +0000

app-shells/bash:     3.2_p17-r1

dev-java/java-config: 1.3.7, 2.1.4

dev-lang/python:     2.4.4-r9

dev-python/pycrypto: 2.0.1-r6

sys-apps/baselayout: 1.12.11.1

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.13, 2.61-r1

sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.4.0-r4

sys-devel/libtool:   1.5.26

virtual/os-headers:  2.6.23-r3

ACCEPT_KEYWORDS="x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O3 -march=i686 -fomit-frame-pointer -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"

CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-O3 -march=i686 -fomit-frame-pointer -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"

LANG="C"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/portage/local/layman/wschlich-testing"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X aac aalib acl acpi ads alsa apache2 apm arts audacious bash-completion berkdb bluetooth bzlib cdparanoia cdr cli cracklib crypt cups dbus dri dvd dvdr esd firefox fortran gd gdbm gnome gpm gtk hal iconv ipv6 isdnlog kde kerberos ldap mad midi mp3 mudflap mysql ncurses nls nptl nptlonly opengl openmp pam pcre perl php pppd python qt3 qt3support qt4 readline reflection samba session sockets spl ssl tcltk tcpd threads unicode usb x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fglrx radeon"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================

                        Package Settings

=================================================================

www-client/mozilla-firefox-2.0.0.14 was built with the following:

CFLAGS="-Wno-return-type -march=i686 -pipe -w"

CXXFLAGS="-Wno-return-type -march=i686 -pipe -w"

>>> Attempting to run pkg_info() for 'www-client/mozilla-firefox-2.0.0.14'

 * pkg_info() is not defined: 'mozilla-firefox-2.0.0.14.ebuild'

```

Rgds,

JS

----------

## pappy_mcfae

Have you done anything like change your compiler? If so, then you'll have to recompile everything. Are you using the compile-it version of firefox? If so, try switching to firefox-bin. I have had consistent bad luck compiling firefox, so now I use firefox-bin. Other than that, I'm fresh out of ideas.

Blessed be!

Pappy

----------

## Hu

That symbol is provided by libxml2.so.  I suggest that you emerge dev-libs/libxml2.  If problems persist, please post the output of readelf -s /usr/lib/libxml2.so | grep xmlNewText.

----------

## JaquesStrap

I re-emerged dev-libs/libxml2-2.6.31, unfortunately the issue persists when I d/l anything. Been using wget a lot these days.  :Smile: 

```

readelf -s /usr/lib/libxml2.so | grep xmlNewText

   478: 00143dc0   377 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriterPushParse

   536: 00121d90   748 FUNC    GLOBAL DEFAULT   11 xmlNewTextReader

   547: 00122250   199 FUNC    GLOBAL DEFAULT   11 xmlNewTextReaderFilename

   643: 00143f40   547 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriterTree

   870: 001437a0   358 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriterFilename

   948: 0004fe20   214 FUNC    GLOBAL DEFAULT   11 xmlNewTextLen

  1003: 00144170   563 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriterDoc

  1209: 0004f7c0   202 FUNC    GLOBAL DEFAULT   11 xmlNewText

  1269: 0005b120   704 FUNC    GLOBAL DEFAULT   11 xmlNewTextChild

  1441: 00143530   618 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriter

  1570: 001443b0   336 FUNC    GLOBAL DEFAULT   11 xmlNewTextWriterMemory

```

Thanks for the help.

----------

## Hu

That is very strange.  I suspect that revdep-rebuild does not report a problem because the libraries required by gnomevfs exist.  They just do not provide all the symbols it needs.  What is the output of ldd /usr/lib/libgnomevfs-2.so.0 /usr/lib/mozilla-firefox/firefox-bin?  Does rebuilding the package containing /usr/lib/libgnomevfs-2.so.0 help?

----------

## JaquesStrap

Hu,

```

 ldd /usr/lib/libgnomevfs-2.so.0

        linux-gate.so.1 =>  (0xffffe000)

        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7e8f000)

        libgconf-2.so.4 => /usr/lib/libgconf-2.so.4 (0xb7e63000)

        libORBit-2.so.0 => /usr/lib/libORBit-2.so.0 (0xb7e0a000)

        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb7e05000)

        libxml2.so.2 => /usr/local/ActiveTcl/lib/libxml2.so.2 (0xb7d60000)

        libdbus-glib-1.so.2 => /usr/lib/libdbus-glib-1.so.2 (0xb7d43000)

        libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xb7d08000)

        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb7cc9000)

        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7bf5000)

        libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0xb7bad000)

        libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0xb7a57000)

        libdl.so.2 => /lib/libdl.so.2 (0xb7a53000)

        libresolv.so.2 => /lib/libresolv.so.2 (0xb7a41000)

        libutil.so.1 => /lib/libutil.so.1 (0xb7a3d000)

        librt.so.1 => /lib/librt.so.1 (0xb7a34000)

        libpthread.so.0 => /lib/libpthread.so.0 (0xb7a1d000)

        libc.so.6 => /lib/libc.so.6 (0xb78ec000)

        libz.so.1 => /lib/libz.so.1 (0xb78d7000)

        libm.so.6 => /lib/libm.so.6 (0xb78b1000)

        libnsl.so.1 => /lib/libnsl.so.1 (0xb789a000)

        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb786e000)

        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb77da000)

        libcom_err.so.2 => /lib/libcom_err.so.2 (0xb77d6000)

        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb77ae000)

        /lib/ld-linux.so.2 (0xb7f13000)

        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb77a5000)

 ldd usr/lib/mozilla-firefox/firefox-bin

        linux-gate.so.1 =>  (0xffffe000)

        libmozjs.so => /usr/lib/mozilla-firefox/libmozjs.so (0xb7e37000)

        libxpcom.so => /usr/lib/mozilla-firefox/libxpcom.so (0xb7e32000)

        libxpcom_core.so => /usr/lib/mozilla-firefox/libxpcom_core.so (0xb7d88000)

        libplds4.so.6 => /usr/lib/nspr/libplds4.so.6 (0xb7d84000)

        libplc4.so.6 => /usr/lib/nspr/libplc4.so.6 (0xb7d7e000)

        libnspr4.so.6 => /usr/lib/nspr/libnspr4.so.6 (0xb7d3d000)

        libpthread.so.0 => /lib/libpthread.so.0 (0xb7d08000)

        libdl.so.2 => /lib/libdl.so.2 (0xb7d04000)

        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb799a000)

        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb7916000)

        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb78fc000)

        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb78e3000)

        libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb78d8000)

        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb7899000)

        libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb77e1000)

        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb77a2000)

        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb779d000)

        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb76c8000)

        libX11.so.6 => /usr/lib/libX11.so.6 (0xb75c4000)

        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb75bf000)

        libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6 (0xb74d6000)

        libm.so.6 => /lib/libm.so.6 (0xb74b0000)

        libgcc_s.so.1 => /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1 (0xb74a3000)

        libc.so.6 => /lib/libc.so.6 (0xb7373000)

        /lib/ld-linux.so.2 (0xb7ee5000)

        libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb7370000)

        libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb736d000)

        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb7368000)

        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7334000)

        libXext.so.6 => /usr/lib/libXext.so.6 (0xb7321000)

        libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb7319000)

        libXi.so.6 => /usr/lib/libXi.so.6 (0xb7311000)

        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb730b000)

        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb7301000)

        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb72cd000)

        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb723a000)

        libz.so.1 => /lib/libz.so.1 (0xb7225000)

        libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb71ff000)

        libXau.so.6 => /usr/lib/libXau.so.6 (0xb71fb000)

        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb71f4000)

        librt.so.1 => /lib/librt.so.1 (0xb71eb000)

        libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb71c0000)

```

I tried emerging libgnome and it fails with the following

```

/bin/sh ../libtool --mode=link i686-pc-linux-gnu-gcc -O3 -march=i686 -fomit-frame-pointer -pipe  -o gnome-open gnome-open.o libgnome-2.la -Wl,--export-dynamic -pthread -lgnomevfs-2 -lbonobo-2 -lbonobo-activation -lgmodule-2.0 -ldl -lgconf-2 -lORBit-2 -lgthread-2.0 -lrt -lgobject-2.0 -lglib-2.0   -lpopt 

i686-pc-linux-gnu-gcc -O3 -march=i686 -fomit-frame-pointer -pipe -o .libs/gnome-open gnome-open.o -Wl,--export-dynamic -pthread  ./.libs/libgnome-2.so /usr/lib/libgnomevfs-2.so /usr/lib/libbonobo-2.so /usr/lib/libbonobo-activation.so /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libgconf-2.so /usr/lib/libORBit-2.so /usr/lib/libgthread-2.0.so -lrt /usr/lib/libgobject-2.0.so /usr/lib/libglib-2.0.so /usr/lib/libpopt.so 

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlNewTextReaderFilename'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderConstXmlLang'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderConstValue'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderRead'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlFreeTextReader'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderNodeType'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderGetAttribute'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderDepth'

/usr/lib/libgnomevfs-2.so: undefined reference to `xmlTextReaderConstName'

collect2: ld returned 1 exit status

make[3]: *** [gnome-open] Error 1

make[3]: Leaving directory `/var/tmp/portage/gnome-base/libgnome-2.20.1.1/work/libgnome-2.20.1.1/libgnome'

make[2]: *** [all] Error 2

make[2]: Leaving directory `/var/tmp/portage/gnome-base/libgnome-2.20.1.1/work/libgnome-2.20.1.1/libgnome'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/var/tmp/portage/gnome-base/libgnome-2.20.1.1/work/libgnome-2.20.1.1'

make: *** [all] Error 2

 * 

 * ERROR: gnome-base/libgnome-2.20.1.1 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line  629:  Called gnome2_src_compile

 *             environment, line  559:  Called die

 * The specific snippet of code:

 *       emake || die "compile failure"

 *  The die message:

 *   compile failure

 * 

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/gnome-base/libgnome-2.20.1.1/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/gnome-base/libgnome-2.20.1.1/temp/environment'.

 * 

 * Messages for package gnome-base/libgnome-2.20.1.1:

 * 

 * ERROR: gnome-base/libgnome-2.20.1.1 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line  629:  Called gnome2_src_compile

 *             environment, line  559:  Called die

 * The specific snippet of code:

 *       emake || die "compile failure"

 *  The die message:

 *   compile failure

 * 

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/gnome-base/libgnome-2.20.1.1/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/gnome-base/libgnome-2.20.1.1/temp/environment'.

 * 

```

Maybe I need to re-emerge gnome entirely?

Thanks for the help,

-JS

----------

## Hu

 *JaquesStrap wrote:*   

> Hu,
> 
> ```
> 
>  ldd /usr/lib/libgnomevfs-2.so.0
> ...

 

This looks very wrong.  You have ActiveTcl installed outside of Portage, and the dynamic linker has picked it instead of the proper version of libxml2.so in /usr/lib.  I suspect that the libxml2 in ActiveTcl is too old to contain the required symbols.  Try removing it.  If you are not sure whether you need it, create a tar file first: tar -C /usr/local -c -f /root/ActiveTcl.tar ActiveTcl.

[Edit: fixed malformed quote tag.]Last edited by Hu on Tue Jun 03, 2008 2:59 am; edited 1 time in total

----------

## JaquesStrap

Ahh damn, your right! I had set some variables up in /etc/profile for convenience (pertaining to TCLLIBPATH etc),  which user root also picked up. Once I removed them, I was able to rebuild libgnome. I definitely require the ActiveTcl, but will be smarter about not letting it pollute the system

Thanks very much for your help, this was a pain to solve.

-JS

----------

