Bug 200213 - app-emulation/emul-linux-x86-compat-2007XXXX ldconfig removes provided /usr/lib32/libstdc++.so.5 symlink
|
Bug#:
200213
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: major
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: amd64@gentoo.org
|
Reported By: jon.roadleybattin@gmail.com
|
|
Component: Core system
|
|
|
URL:
|
|
Summary: app-emulation/emul-linux-x86-compat-2007XXXX ldconfig removes provided /usr/lib32/libstdc++.so.5 symlink
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-11-24 17:01 0000
|
app-emulation/emul-linux-x86-compat-20071114-r1 fails to provide
/usr/lib32/libstdc++.so.5
as required by a number of 32bit libs
ln -s /usr/lib32/libstdc++-v3/libstdc++.so.5.0.7 /usr/lib32/libstdc++.so.5 is a
workaround for now
Reproducible: Always
[ Searching for packages matching
=app-emulation/emul-linux-x86-compat-20071114-r1... ]
* Contents of app-emulation/emul-linux-x86-compat-20071114-r1:
/lib32
/lib32/ld-linux.so.1 -> ld-linux.so.1.9.11
/lib32/ld-linux.so.1.9.11
/usr
/usr/lib32
/usr/lib32/libc.so.5
/usr/lib32/libg++.so.2.7.2 -> libg++.so.2.7.2.8
/usr/lib32/libg++.so.2.7.2.8
/usr/lib32/libstdc++-2-libc6.1-1-2.9.0.so
/usr/lib32/libstdc++-3-libc6.2-2-2.10.0.so
/usr/lib32/libstdc++-libc6.1-1.so.2 -> libstdc++-2-libc6.1-1-2.9.0.so
/usr/lib32/libstdc++-libc6.2-2.so.3 -> libstdc++-3-libc6.2-2-2.10.0.so
/usr/lib32/libstdc++-v3
/usr/lib32/libstdc++-v3/libstdc++.so.5 -> libstdc++.so.5.0.7
/usr/lib32/libstdc++-v3/libstdc++.so.5.0.7
/usr/lib32/libstdc++.so.2.7.2 -> libstdc++.so.2.7.2.8
/usr/lib32/libstdc++.so.2.7.2.8
/usr/lib32/libstdc++.so.2.8 -> libstdc++.so.2.8.0
/usr/lib32/libstdc++.so.2.8.0
/usr/lib32/libstdc++.so.2.9 -> libstdc++.so.2.9.0
/usr/lib32/libstdc++.so.2.9.0
/usr/lib32/libstdc++.so.5 -> libstdc++-v3/libstdc++.so.5
The symlink is created.
the only explanation I can think of is you tried an earlier version of
emul-linux-x86-compat-200711?? where this bug did exist and you had to create
that symlink by hand. Portage would have refused to remove the symlink and
could have caused this problem.
try(as root):
emerge --sync
emerge -C emul-linux-x86-compat
rm /usr/lib32/libstdc++.so.5*
emerge emul-linux-x86-compat
if you still don't have the symlink, please reopen with output of emerge --info
I have seen other user in spanish forums with this problem, I will check it...
*** Bug 200226 has been marked as a duplicate of this bug. ***
I get exactly the same problem. I have upgraded from:
app-emulation/emul-linux-x86-compat-1.0-r3
But, after running:
emerge -C emul-linux-x86-compat
emerge emul-linux-x86-compat
It is fixed :-O (without needing to remove any file as there were no
/usr/lib32/libstdc++.so.5* files after emerge -C)
Seems that for updating is needed to previosly unmerge already installed
package :-/
My emerge --info:
Portage 2.1.3.19 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0,
2.6.23-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r1 x86_64 AMD Athlon(tm) 64 Processor 3200+
Timestamp of tree: Sat, 24 Nov 2007 18:30:07 +0000
ccache version 2.4 [enabled]
app-shells/bash: 3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.4.4-r6
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache: 2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.18-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.22-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild
/etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=k8 -O2 -pipe -msse3"
DISTDIR="/usr/distfiles"
FEATURES="autoaddcvs ccache collision-protect cvs distlocks metadata-transfer
multilib-strict parallel-fetch sandbox sfperms strict unmerge-orphans
userfetch"
GENTOO_MIRRORS="http://ftp.heanet.ie/pub/gentoo/"
LANG="es_ES.UTF-8"
LC_ALL="es_ES.UTF-8"
LINGUAS="es en_US"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/musicbrainz
/usr/portage/local/layman/sunrise /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acl acpi alsa amd64 asf audiofile avahi
bash-completion beagle bitmap-fonts bzip2 bzlib cairo caps cdb cdda cddb
cdparanoia cdr cli cpdflib cpudetection cracklib cross crypt cups curl daap
dbus dga divx4linux djvu dlloader dri dts dvb dvd dvdr dvdread eds encode
erandom escreen evo evolution exif fam fbcon ffmpeg flac foomaticdb fortran ftp
galago gb gcj gd ggi gif gimp gimpprint glitz glut glx gnome gnome-print
gphoto2 gpm gstreamer gtk gtk2 gtkhtml hal hddtemp iconv idn imagemagick imlib
isdnlog ithreads jabber java jpeg kde kdeenablefinal kdehiddenvisibility latex
lcms libnotify lm_sensors logrotate mad madwifi midi mikmod mime mmx mmxext mng
mono motif mp3 mpeg mpi mplayer mudflap musepack musicbrainz nas nautilus
ncurses nethack network networkmanager nls nocardbus nptl nptlonly nvidia ogg
oggvorbis openal opengl openmp pam pcre pdf perl pic plotutils png posix ppds
pppd python qt3 qt4 quicktime readline reflection remote rtc scanner sdl
seamonkey session slang slp sockets spell spl sse sse2 sse3 ssl
startup-notification svg sysvipc tcltk tcpd tetex theora threads tiff timidity
tk totem trayicon truetype truetype-fonts type1-fonts unicode usb v4l v4l2 vcd
videos vim vorbis wma wmf xattr xcomposite xine xml xml2 xorg xpm xv xvid zlib"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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"
ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad
cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="es
en_US" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa fbdev vga"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
This got emerged today, so not an earlier issue. YES this issue was reported
(by me) for the emul-linux-x86-compat-20071114 package when that package was
hardmasked and the bug closed with RESOLVE due to it apparently being fixed in
-r1
This got reported today when -r1 got un-hardmasked and avail to ~amd64
The symlink didn't get made by portage, the symlink had to be made manually for
32bit apps requireing this lib (ie firefox-bin) to function
emerge --info
emerge --info
Portage 2.1.4_rc3 (default-linux/amd64/2007.0/desktop, gcc-4.2.2, glibc-2.7-r0,
2.6.22-gentoo-r8 x86_64)
=================================================================
System uname: 2.6.22-gentoo-r8 x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz
Timestamp of tree: Sat, 24 Nov 2007 13:00:01 +0000
ccache version 2.4 [enabled]
app-shells/bash: 3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.2-r1
dev-lang/python: 2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache: 2.4-r7
sys-apps/baselayout: 2.0.0_rc6
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.23-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf
/etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/splash /etc/terminfo
/etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer parallel-fetch sandbox sfperms
strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://mirrors.blueyonder.co.uk/sites/gentoo
ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo
ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo
http://mirror.switch.ch/mirror/gentoo/ ftp://mirror.switch.ch/mirror/gentoo/
ftp://ftp.solnet.ch/mirror/Gentoo
http://www.mirror.ac.uk/mirror/www.ibiblio.org/"
LANG="en_GB.UTF-8"
LINGUAS="en_GB en uk"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise
/usr/portage/local/layman/pok3d /usr/portage/local/layman/xeffects
/usr/portage/local/layman/science /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac accessibility acl acpi aiglx alsa amd64 avahi berkdb bitmap-fonts
branding cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss
encode evo fam fortran gdbm gif glitz gnome gpm gstreamer gtk gtk2 hal iconv
ipv6 isdnlog java jpeg kerberos libnotify mad midi mikmod mmx mp3 mpeg mudflap
ncurses nls nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl png
pppd pulseaudio python qt3support quicktime readline reflection samba sdl
session spell spl sse sse2 ssl svg tcpd threads tiff truetype truetype-fonts
type1 type1-fonts unicode usb vorbis xml xorg xulrunner xv zlib"
ALSA_CARDS="cmipci" ALSA_PCM_PLUGINS="adpcm copy dmix dshare dsnoop ioplug
plug" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses
text" LINGUAS="en_GB en uk" USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Seems deleting the symlink
&& re-emerging emul-linux-x86-compat (but no new sync) creates the symlink
nfc whats going on!
I can confirm: unmerge and remerge fixes the issue.
I did some debugging and found out the sequence of events that trigger this:
1) portage merges the /usr/lib32/libstdc++.so.5 -> libstdc++-v3/libstdc++.so.5
symlink correctly
2) portage runs ldconfig, which updates the /usr/lib32/libstdc++.so.5 symlink
to point at /usr/lib32/libstdc++.so.5.0.5 instead of the correct location
3) portage unmerges /usr/lib32/libstdc++.so.5.0.5 with the older version,
making /usr/lib32/libstdc++.so.5 into a broken symlink
4) portage runs ldconfig, which removes the broken symlink
I've committed app-emulation/emul-linux-x86-compat-20071125 to the tree, I
think we've resolved this.
The core problem seems to be that we added RPATH info and ldconfig choked on
it.
*** Bug 200382 has been marked as a duplicate of this bug. ***
Just for the record this affected me also. I fixed it temporarily by adding
the missing lib path to my ld.so.conf. Thanks for fixing this up promptly.
*** Bug 200485 has been marked as a duplicate of this bug. ***
hello. The last comments said that emul-linux-x86-compat-20071125 should fix
it, but i dont think so. I've just been faced with the problem. My genlop looks
like this :
Sun Sep 18 15:22:51 2005 >>> app-emulation/emul-linux-x86-compat-1.0
Fri Dec 2 17:14:01 2005 >>> app-emulation/emul-linux-x86-compat-1.0-r1
Sat Jan 13 18:48:31 2007 >>> app-emulation/emul-linux-x86-compat-1.0-r2
Thu Mar 22 20:00:24 2007 >>> app-emulation/emul-linux-x86-compat-1.0-r3
Wed Nov 28 20:35:13 2007 >>> app-emulation/emul-linux-x86-compat-20071125
and everything was broken
Unmerge + re-emerge it solved it, but i think that the ebuild is still bogus.
(I mean, we can't expect everybody to find the closed bug in bugzilla to find
out a way to fix the pb)
*** Bug 200800 has been marked as a duplicate of this bug. ***
*** Bug 200957 has been marked as a duplicate of this bug. ***
*** Bug 200957 has been marked as a duplicate of this bug. ***
*** Bug 201055 has been marked as a duplicate of this bug. ***
*** Bug 201473 has been marked as a duplicate of this bug. ***
Well, when 'emerge -puv' invites me to upgrade
app-emulation/emul-linux-x86-compat-1.0-r3 to
app-emulation/emul-linux-x86-compat-20071125
and I discover on IRC (thanks to mlangc) that I actually have to 'emerge
emul-linux-x86-compat' TWICE for the ebuild to get it right, that can't be
right. As a pretty unsatisfactory minimum, the ebuild should
ewarn 'PLEASE check the symlink for /usr/lib32/libstdc++.so.5 and if it is
invalid, emerge me again.'
I guess I'm in the Comment 13 camp. I don't generally chace through ChangeLog
s to figure out why the ebuild doesn't actually work as advertised.
Actually, I guess if you set up a blocker on any version of
emul-linux-x86-compat which must be unmerged by hand before installing this,
that would be OK.
this is not a bug with the ebuild or the source tarball
toolchain: why does ldconfig remove the symlink, even after I've removed RPATH
info.
that's how it's supposed to work
why install into /usr/lib32/libstdc++-v3/ and not just insto /usr/lib32/ ?
(In reply to comment #23)
> that's how it's supposed to work
>
> why install into /usr/lib32/libstdc++-v3/ and not just insto /usr/lib32/ ?
>
because thats where libstdc++-v3 installs to.
(In reply to comment #24)
> (In reply to comment #23)
> > that's how it's supposed to work
> >
> > why install into /usr/lib32/libstdc++-v3/ and not just insto /usr/lib32/ ?
> >
>
> because thats where libstdc++-v3 installs to.
>
let me clarify. when we build the emul "source", it is an x86 build with
s/lib/lib32/g. libstdc++-v3 normally installs into /usr/lib/libstdc++-v3/ and
I don't see any logic in making emul- a special case.
Would an env.d entry prevent ldconfig from removing the symlink?
env.d file added in 20071125-r1
*** Bug 201727 has been marked as a duplicate of this bug. ***
*** Bug 206050 has been marked as a duplicate of this bug. ***
*** Bug 206050 has been marked as a duplicate of this bug. ***