Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 27020 - ghc-6.0.1 emerge fails. Missing libreadline.so.4.1
Summary: ghc-6.0.1 emerge fails. Missing libreadline.so.4.1
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: George Shapovalov (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-08-20 16:48 UTC by Mikael A
Modified: 2003-08-22 11:32 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mikael A 2003-08-20 16:48:14 UTC
I have ghc-6.0 and ghc-bin-6.0 and trying to emerge 6.0.1 and get the error 
below. Further investigation shows that the name of the offending library is 
encoded into the ghc-6.0 binary which is the compiler used for the 
compilation. Somehow it seems as if ghc require the minor version of libraries 
to be the same because the readline i have installed is libreadline.so.4.3. If 
4.1 is required the ebuild should depend on readline-4.1 as well. 
---  
# ghc-6.0 -strings  ghc-6.0 | grep lib 
/lib/ld-linux.so.2 
libreadline.so.4.1 
libncurses.so.5 
libdl.so.2 
libm.so.6 
libgmp.so.3 
libpthread.so.0 
libc.so.6 
 
 
--- error 
/usr/bin/ghc -M -optdep-f -optdep.depend  -osuf o    -H16m -O HaskTags.hs 
/usr/lib/ghc-6.0/ghc-6.0: error while loading shared libraries: 
libreadline.so.4.1: cannot open shared object file: No such file or directory 
make[3]: *** [depend] Error 127 
make[2]: *** [boot] Error 1 
make[1]: *** [boot] Error 1 
make[1]: Leaving directory `/var/tmp/portage/ghc-6.0.1/work/ghc-6.0.1/ghc' 
make: *** [build] Error 1 
 
!!! ERROR: dev-lang/ghc-6.0.1 failed. 
!!! Function src_compile, Line 93, Exitcode 2 
!!! (no error message) 
 

Reproducible: Always
Steps to Reproduce:
Probable steps: 
1. emerge ghc 
2. upgrade readline 
3. upgrade ghc 
Actual Results:  
The ebuild borked 

Expected Results:  
It should have installed ghc-6.0.1 

Portage 2.0.49_pre18 (default-x86-1.4, gcc-3.2.3, glibc-2.2.5-r4,2.3.2-r1, 
2.4.20-gentoo-r3-cfg1) 
================================================================= 
System uname: 2.4.20-gentoo-r3-cfg1 i686 AMD Athlon(tm) processor 
GENTOO_MIRRORS="ftp://ftp.uninett.no/pub/linux/Gentoo 
ftp://gentoo.linux.no/pub/gentoo/ http://gentoo.linux.no/" 
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config 
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config 
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ 
/usr/share/config" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" 
PORTDIR="/usr/portage" 
DISTDIR="/usr/portage/distfiles" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR_OVERLAY="/data/portage" 
USE="x86 oss 3dnow apm avi crypt cups encode foomaticdb gif jpeg gnome libg++ 
mad mikmod mmx mpeg ncurses nls pdflib png spell truetype xml2 xmms xv zlib 
gtkhtml alsa gdbm berkdb slang readline arts tetex aalib nas bonobo ggi tcltk 
java guile ruby X sdl gpm tcpd pam libwww ssl perl python esd imlib oggvorbis 
gtk qt kde motif opengl mozilla cdr scanner apache2 mozp3p mozsvg mozxmlterm 
-quicktime -svga" 
COMPILER="gcc3" 
CHOST="i686-pc-linux-gnu" 
CFLAGS="-O -march=athlon-tbird -pipe" 
CXXFLAGS="-O -march=athlon-tbird -pipe" 
ACCEPT_KEYWORDS="x86 ~x86" 
MAKEOPTS="-j2" 
AUTOCLEAN="yes" 
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" 
FEATURES="sandbox ccache emergemail"
Comment 1 SpanKY gentoo-dev 2003-08-20 17:06:22 UTC
umm if you upgraded your readline, it would have broken libraries/binaries ... 
 
try running `revdep-rebuild` from gentoolkit 
Comment 2 Mikael A 2003-08-22 08:44:08 UTC
revdep-rebuild doesn't work since ghc is used to build ghc. But unmerging ghc 
(and merging ghc-bin if you haven't got it) and then remerging ghc again 
works. Upgrading a libraries minor version doesn't necessarily mean 
application breaks this is why thought it was a but. And it maybe someone else 
thought this too because in 6.0.1 libreadline only specifies major version. 
 
Ahh well, I'm happy now anyway since both the problem and the symptom is gone 
:) 
 
# ldd /usr/lib/ghc-6.0.1/ghc-6.0.1 
        libreadline.so.4 => /lib/libreadline.so.4 (0x4002b000) 
        libncurses.so.5 => /lib/libncurses.so.5 (0x40057000) 
        ... 
 
Or by same command used on 6.0: 
# strings /usr/lib/ghc-6.0.1/ghc-6.0.1 | grep lib 
/lib/ld-linux.so.2 
libreadline.so.4 
libncurses.so.5 
libdl.so.2 
libm.so.6 
libgmp.so.3 
libpthread.so.0 
libc.so.6 
Comment 3 SpanKY gentoo-dev 2003-08-22 11:32:22 UTC
hmm, i see ... quite the 'edge' case for revdep-rebuild to handle ...