Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 67128 - libpthread missing after glibc upgrade
Summary: libpthread missing after glibc upgrade
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High critical (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-11 11:39 UTC by Chris
Modified: 2004-10-14 07:23 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
libpthread.so.0 that I downloaded from Kugelfang that saved my butt (libpthread.so.0,1.01 MB, application/octet-stream)
2004-10-12 06:55 UTC, Chris
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Chris 2004-10-11 11:39:46 UTC
I upgraded glibc to glibc-2.3.4.20041006 on ~amd64 and afterwards most everything stopped working with complaints that libpthread.so.1 was missing. I checked and /lib64/lipbpthread.so.1 was not there.  Scrolling up in the terminal, I saw something like(maybe not exactly but I remember the <<< and the /lib64/libpthread.so) this towards the end.
<<<        sym /usr/lib64/libthread.so
<<<        sym /usr/lib64/libthread_db.so

Eventually, I downloaded a libpthread.so.0 from Kugelfang and copied it to /lib64/ and env-update, emerge glibc , env-update and it works now.  However libthread_db.so is still MIA.

Reproducible: Didn't try
Steps to Reproduce:
1. emerge sync 
2. emerge glibc
3. panic

Actual Results:  
System was almost completely unusable.  emerge -p system resulted in error 
similiar to python2.2: /lib/libpthreads.so.0: version 'GLIBC_2.3.4' not found.
ls resulted in error regarding libpthreads.so.0 as well.


Expected Results:  
worked?  not installed if error?
Comment 1 Jonathan Briggs 2004-10-11 12:47:51 UTC
I had the same problem.  I was able to run emerge however, and reverted to last working glibc.
Comment 2 E. Papegaaij 2004-10-11 15:39:27 UTC
I can confirm this problem. I copied the libpthread from Kugelfang and reverted to the old glibc (sys-libs/glibc-2.3.4.20040808-r1).
Comment 3 Chris 2004-10-11 19:51:19 UTC
I want to make sure that I typed "emerge glibc" after copying the libpthread and it re-installed glibc-2.3.4.20041006 and it worked.  I'm not sure if it replaced the libpthread I downloaded.  My original version of glibc was higher than .20040808 ... I think it was .20040916??.  That version popped up for a few days and then wanted to be downgraded back to .20040808 so I held off untill this came out.  Oops!
Comment 4 Luke Ravitch 2004-10-12 01:50:49 UTC
For those of us who have tripped on this bug, could somebody post a URL where we can download the stopgap libpthread.so?  I tried to find one, but my Google skills just weren't up to the task.  Thanks.
Comment 5 Mikko Tiihonen 2004-10-12 05:45:51 UTC
I bumped into the same problem when emerging the glibc this 20041006. I used the new nptlonly use flag and though that was the reason for the breakage but it seems that is not needed. 
Comment 6 Chris 2004-10-12 06:55:07 UTC
Created attachment 41618 [details]
libpthread.so.0 that I downloaded from Kugelfang that saved my butt

[chris@buu][~]$ file /lib64/libpthread.so.0
/lib64/libpthread.so.0: ELF 64-bit LSB shared object, AMD x86-64, version 1
(SYSV), stripped
Comment 7 Mikko Tiihonen 2004-10-12 08:20:57 UTC
I tried to attached libpthread.so.0 but it doesn't work for me and instead I see the following error:

relocation error: /lib64/libpthread.so.0: symbol _h_errno, version GLIBC_2.2.5 not defined in file libc.so.6 with link time reference

I think either need a newer or an older version of libpthread.so to match my current glibc.
Comment 8 Owen Ford 2004-10-12 21:58:52 UTC
I have the same problem on an x86 box.  I'd love to post more info but no commands mill run.
Comment 9 Jonathan Briggs 2004-10-12 22:17:45 UTC
If you have binary .tbz2 packages built, you can do this to recover:
cd /
bzcat /usr/portage/packages/All/glibc-* | cpio -i --format=tar

That worked for me, at any rate.
Comment 10 Jonathan Briggs 2004-10-12 22:18:52 UTC
Errr, except replace glibc-* with glibc-your_real_glibc_version_here, otherwise it will try to extract all glibcs ever?  Well, it might.
Comment 11 Mikko Tiihonen 2004-10-12 22:19:35 UTC
I maged to get my system back online by extracting the redhat rawhide glibc rpm for x86_64 and using the libraries from there, others have used the libraries in livecd for the same effect. After you have enough files (I had to copy both libpthread.so and libc.so) you can emerge an older glibc.

One good tip about recovery: The /bin/sash shell has is statically linked and it has most needed unix commands built-in so they can be used even without libc.so.
Comment 12 Owen Ford 2004-10-12 22:42:14 UTC
I had to use the rescue cd and the binaries that I've been considering rming.  I think I'll keep building them.  I'd never needed yet.
Comment 13 Travis Tilley (RETIRED) gentoo-dev 2004-10-13 07:34:17 UTC
could someone here -please- post their emerge info?

specifically, i want to know if you're all using the lib64 profile.
Comment 14 Chris 2004-10-13 07:48:17 UTC
emerge.info

Gentoo Base System version 1.5.3
Portage 2.0.51_rc7 (default-linux/amd64/gcc34-2004.2, gcc-3.4.2, glibc-2.3.4.20041006-r0, 2.6.9-rc2-mm1 x86_64)
=================================================================
System uname: 2.6.9-rc2-mm1 x86_64 AMD Opteron(tm) Processor 244
distcc 2.17 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r4
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.92.0.2
Headers:  sys-kernel/linux26-headers-2.6.7-r4
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=opteron -pipe -fweb -ftracer"
CHOST="x86_64-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=opteron -pipe -fweb -ftracer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache distlocks"
GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acpi amd64 apache2 apm bzlib crypt curl encode exif f77 fbcon foomaticdb gdbm gif gpm gps gtk2 imagemagick imlib innodb jpeg junit libg++ libwww mikmod motif mpeg mysql ncurses nls oss pam pdflib perl php png python readline sdl slang sockets spell ssl svg tcpd tidy tiff truetype usb vhosts xml2 xmms xv zlib"
Comment 15 Jonathan Briggs 2004-10-13 09:00:16 UTC
Portage 2.0.51_rc9 (default-linux/amd64/gcc34-2004.2, gcc-3.4.2, glibc-2.3.4.20040808-r1, 2.6.9-rc3 x86_64)
=================================================================
System uname: 2.6.9-rc3 x86_64 AMD Athlon(tm) 64 Processor 3400+
Gentoo Base System version 1.5.3
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.92.0.2-r1
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CFLAGS="-march=k8 -O3 -funit-at-a-time -ffast-math -pipe"
CHOST="x86_64-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O3 -funit-at-a-time -ffast-math -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs buildpkg ccache distlocks fixpackages"
GENTOO_MIRRORS="http://gentoo.llarian.net/ http://gentoo.ccccom.com http://128.213.5.34/gentoo/ http://gentoo.osuosl.org/ http://cudlug.cudenver.edu/gentoo/ http://gentoo.mirrors.pair.com/ http://csociety-ftp.ecn.purdue.edu/pub/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acpi alsa amd64 avi berkdb bonobo cdr crypt cups dmx dvd dvdr edl eds encode esd evo f77 fam flac foomaticdb gcj gdbm gif gnome gpm gstreamer gtk gtk2 guile hal imagemagick imap imlib ipv6 java jpeg junit kde libg++ libwww mad mikmod motif mozilla mozsvg mpeg ncurses nls nomultilib nptl nvidia offensive oggvorbis openal opengl pam pcmcia pdflib perl png python qt quicktime readline rtc samba sdl slang spell ssl svg tcpd theora tiff truetype unicode usb wmf xml2 xmms xprint xscreensaver xv xvid xvmc zlib"
Comment 16 Jonathan Briggs 2004-10-13 09:30:23 UTC
Here is an error I think is related to this bug from a non-AMD64 system.  It is a Athlon MP system.

LC_ALL=C ./intltool-merge ./po freedesktop.org.xml.in freedesktop.org.xml -x -u -c ./po/.intltool-merge-cache
Generating and caching the translation database
gcc  -O3 -march=athlon-mp -mfpmath=sse -fomit-frame-pointer -funit-at-a-time -fweb -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings `pkg-config --cflags libxml-2.0 glib-2.0`  `pkg-config --libs libxml-2.0 glib-2.0` -o update-mime-database  update-mime-database.o
Merging translations into freedesktop.org.xml.
/lib/libpthread.so.0: undefined reference to `errno@GLIBC_PRIVATE'
/lib/libpthread.so.0: undefined reference to `__libc_dl_error_tsd@GLIBC_PRIVATE'
/lib/libpthread.so.0: undefined reference to `__libc_fork@GLIBC_2.1.2'
/lib/libpthread.so.0: undefined reference to `__resp@GLIBC_PRIVATE'
/lib/libpthread.so.0: undefined reference to `h_errno@GLIBC_PRIVATE'
collect2: ld returned 1 exit status
make[2]: *** [update-mime-database] Error 1
make[2]: *** Waiting for unfinished jobs....
CREATED freedesktop.org.xml
make[2]: Leaving directory `/usr/src/portage/shared-mime-info-0.14-r1/work/shared-mime-info-0.14'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/portage/shared-mime-info-0.14-r1/work/shared-mime-info-0.14'
make: *** [all] Error 2

!!! ERROR: x11-misc/shared-mime-info-0.14-r1 failed.
!!! Function src_compile, Line 26, Exitcode 2
!!! (no error message)
!!! If you need support, post the topmost build error, NOT this status message.

And the emerge info for the Athlon MP system:
Portage 2.0.51_rc9 (gcc34-x86-2004.2, gcc-3.4.2, glibc-2.3.4.20041006-r0, 2.6.9-rc3 i686)
=================================================================
System uname: 2.6.9-rc3 i686 AMD Athlon(tm) MP 1900+
Gentoo Base System version 1.5.3
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.92.0.2-r1
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=athlon-mp -mfpmath=sse -fomit-frame-pointer -funit-at-a-time -fweb -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/share/config:/usr/kde/3.3/env:/usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=athlon-mp -mfpmath=sse -fomit-frame-pointer -funit-at-a-time -fweb -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs buildpkg ccache distlocks sandbox"
GENTOO_MIRRORS="http://csociety-ftp.ecn.purdue.edu/pub/gentoo/ http://gentoo.llarian.net/ http://gentoo.ccccom.com http://128.213.5.34/gentoo/ http://gentoo.osuosl.org/ http://cudlug.cudenver.edu/gentoo/ http://gentoo.mirrors.pair.com/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/usr/src"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow X acpi alsa apache2 apm avi berkdb cdr crypt cups doc dv dvd dvdr eds encode esd evo f77 flac foomaticdb gdbm gif gnome gphoto2 gpm gstreamer gtk gtk2 guile hal imap imlib ipv6 java jce jikes jpeg libg++ libwww mad maildir mikmod mmx mng motif mozilla mozsvg mpeg ncurses nls nptl oggvorbis opengl oss pam pdflib perl physfs pic png postgres python qt quicktime readline samba scanner sdl slang spell sse ssl svg tcltk tcpd tetex theora tiff truetype wmf x86 xml2 xprint xv xvid yv12 zlib"
Comment 17 Travis Tilley (RETIRED) gentoo-dev 2004-10-13 10:33:42 UTC
can everyone here sync up in about 30 minutes and try again?
Comment 18 Travis Tilley (RETIRED) gentoo-dev 2004-10-13 10:34:51 UTC
well, except for the x86 guy. that looks like a whole different bug entirely.
Comment 19 Travis Tilley (RETIRED) gentoo-dev 2004-10-13 17:19:15 UTC
welp. this -should- be fixed, re-open if it is not.
Comment 20 Chris 2004-10-14 07:23:18 UTC
I reinstalled glibc this morning and everything looks good!  Thanks!

[root@buu][portage]# file /lib64/libpthread.so.0
/lib64/libpthread.so.0: symbolic link to `libpthread-0.10.so'
[root@buu][portage]# file /lib64/libpthread-0.10.so
/lib64/libpthread-0.10.so: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped