I forward a messages from the opera linux newsgroup about this problem.
SuSE 9.0 also has two versions of libc.so.6 and switching to the other
one makes Opera 8.01 run fine:
curry /root/tmp# ldconfig -p | grep libc.so
libc.so.6 (libc6, hwcap: 0x8000000000000, OS ABI: Linux 2.4.1) =>
/lib/i686/libc.so.6
libc.so.6 (libc6, OS ABI: Linux 2.2.5) => /lib/libc.so.6
By setting LD_ASSUME_KERNEL to 2.2.5 before calling Opera 8.01, it will
run fine instead of segfaulting. However, I've no idea what I'm really
doing when setting this variable to this value :-)
cu,
Frank
Robt. W. Fletcher Jr wrote
~% /lib/libc.so.6
GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.3.5-20050130 (Gentoo Linux
3.3.5.20050130-r1, ssp-3.3.5.20050130-1, pie-8.7.7.1).
Compiled on a Linux 2.6.11 system on 2005-07-09.
Available extensions:
GNU libio by Per Bothner
crypt add-on version 2.1 by Michael Glad and others
linuxthreads-0.10 by Xavier Leroy
The C stubs add-on version 2.1.2.
GNU Libidn by Simon Josefsson
BIND-8.2.3-T5B
libthread_db work sponsored by Alpha Processor Inc
NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Thread-local storage support included.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
/lib/tls/libc.so.6
~% /lib/tls/libc.so.6
GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.3.5-20050130 (Gentoo Linux
3.3.5.20050130-r1, ssp-3.3.5.20050130-1, pie-8.7.7.1).
Compiled on a Linux 2.6.11 system on 2005-07-09.
Available extensions:
GNU libio by Per Bothner
crypt add-on version 2.1 by Michael Glad and others
Native POSIX Threads Library by Ulrich Drepper et al
The C stubs add-on version 2.1.2.
GNU Libidn by Simon Josefsson
BIND-8.2.3-T5B
NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Thread-local storage support included.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
As you can see I have two (2) versions of glibc -- one with
linuxthreads and the other with Native POSIX Threads (nptl).
~% ldconfig -p | grep libc.so
libc.so.6 (libc6, hwcap: 0x8000000000000000, OS ABI: Linux
2.6.5) => /lib/tls/libc.so.6
libc.so.6 (libc6, OS ABI: Linux 2.4.1) => /lib/libc.so.6
libc.so.5 (ELF) => /usr/lib/libc.so.5
~% cd /local/net/targz/opera-8.01-20050509.5-shared-qt.i386-en
~% setenv LD_ASSUME_KERNEL 2.4.1
~% ./opera
Opera comes up.
~% cd /local/net/targz/opera-8.01-20050615.5-shared-qt.i386-en
~% setenv LD_ASSUME_KERNEL 2.4.1
~% ./opera
~% ./opera: line 259: 17534 Segmentation fault (core dumped) './bin/opera'
~% gdb ./bin/opera -c core
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc. GDB is free software,
covered by the GNU General Public License, and you are welcome to
change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions. There is absolutely no
warranty for GDB. Type "show warranty" for details. This GDB was
configured as "i686-pc-linux-gnu"...(no debugging symbols found) Using
host libthread_db library "/lib/libthread_db.so.1".
(no debugging symbols found)
Core was generated by `./bin/opera'.
Program terminated with signal 11, Segmentation fault.
warning: current_sos: Can't read pathname for load map: Input/output
error
Reading symbols from
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/client/libjvm.so...(no
debugging symbols found)...done.
Loaded symbols for
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/client/libjvm.so
Reading symbols from
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libawt.so...(no debugging
symbols found)...done.
Loaded symbols for /opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libawt.so
Reading symbols from /lib/libpthread.so.0...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /usr/qt/3/lib/libqt-mt.so.3...done.
Loaded symbols for /usr/qt/3/lib/libqt-mt.so.3
Reading symbols from /usr/lib/libX11.so.6...done.
Loaded symbols for /usr/lib/libX11.so.6
Reading symbols from /lib/libz.so.1...done.
Loaded symbols for /lib/libz.so.1
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so.5...done.
Loaded symbols for
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so.5
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libgcc_s.so.1...done.
Loaded symbols for
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libmlib_image.so...done.
Loaded symbols for
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libmlib_image.so
Reading symbols from
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libXm.so.3...done.
Loaded symbols for /opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libXm.so.3
Reading symbols from /usr/lib/libXp.so.6...done.
Loaded symbols for /usr/lib/libXp.so.6
Reading symbols from /usr/lib/libXt.so.6...done.
Loaded symbols for /usr/lib/libXt.so.6
Reading symbols from /usr/lib/libSM.so.6...done.
Loaded symbols for /usr/lib/libSM.so.6
Reading symbols from /usr/lib/libICE.so.6...done.
Loaded symbols for /usr/lib/libICE.so.6
Reading symbols from /usr/lib/libXext.so.6...done.
Loaded symbols for /usr/lib/libXext.so.6
Reading symbols from /usr/lib/libXtst.so.6...done.
Loaded symbols for /usr/lib/libXtst.so.6
Reading symbols from /opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libjava.so...done.
Loaded symbols for /opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libjava.so
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/libmng.so.1...done.
Loaded symbols for /usr/lib/libmng.so.1
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libpng.so.3...done.
Loaded symbols for /usr/lib/libpng.so.3
Reading symbols from /usr/lib/libXi.so.6...done.
Loaded symbols for /usr/lib/libXi.so.6
Reading symbols from /usr/lib/libXrender.so.1...done.
Loaded symbols for /usr/lib/libXrender.so.1
Reading symbols from /usr/lib/libXrandr.so.2...done.
Loaded symbols for /usr/lib/libXrandr.so.2
Reading symbols from /usr/lib/libXcursor.so.1...done.
Loaded symbols for /usr/lib/libXcursor.so.1
Reading symbols from /usr/lib/libXft.so.2...done.
Loaded symbols for /usr/lib/libXft.so.2
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libfontconfig.so.1...done.
Loaded symbols for /usr/lib/libfontconfig.so.1
Reading symbols from
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libverify.so...done.
Loaded symbols for
/opt/blackdown-jdk-1.4.2.02/jre/lib/i386/libverify.so
Reading symbols from /usr/lib/liblcms.so.1...done.
Loaded symbols for /usr/lib/liblcms.so.1
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
#0 0xb7b3868f in __pthread_alt_lock () from /lib/libpthread.so.0
(gdb) bt full
#0 0xb7b3868f in __pthread_alt_lock () from /lib/libpthread.so.0
No symbol table info available.
#1 0xb7b351e5 in pthread_mutex_lock () from /lib/libpthread.so.0
No symbol table info available.
#2 0x081c40b1 in calloc ()
No symbol table info available.
#3 0xb7fa3fd1 in _dl_tls_setup () from /lib/ld-linux.so.2
No symbol table info available.
#4 0xb7b35933 in __pthread_initialize_minimal () from
/lib/libpthread.so.0
No symbol table info available.
#5 0xb7b322e5 in call_initialize_minimal () from /lib/libpthread.so.0
No symbol table info available.
#6 0xb7b31ccc in _init () from /lib/libpthread.so.0
No symbol table info available.
#7 0xb7fa1b8e in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
No symbol table info available.
#8 0xb7fa1d1b in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2
No symbol table info available.
#9 0xb7f96805 in ?? () from /lib/ld-linux.so.2
No symbol table info available.
(gdb)
I suspect the above is the seg-fault that Gentoo users (who didn't
compile glibc with nptl) were seeing when they tried to run 8.01f. The
issue remains in 8.02tp1 -- even though Gentoo users started
complaining on the 16th of June. Sigh!
Now I realize this might be a glibc issue, but why does Opera 8.01b
work yet Opera 8.01f doesn't?
8.01f and 8.02tp1 both work when the /lib/tls (nptl) glibc version is
used -- i.e unset LD_ASSUME_KERNEL.
~% uname -rpis
Linux 2.6.12-gentoo-r4 Celeron (Mendocino) GenuineIntel