Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 125971 - [QA] dev-lang/tcl-8.4.12, dev-lang/tk-8.4.12, libraries lacking SONAME
Summary: [QA] dev-lang/tcl-8.4.12, dev-lang/tk-8.4.12, libraries lacking SONAME
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: TCL/TK Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 98715 178853
  Show dependency tree
 
Reported: 2006-03-12 12:30 UTC by Sandro Bonazzola (RETIRED)
Modified: 2007-06-17 16:35 UTC (History)
2 users (show)

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


Attachments
tcl-8.3.5-tclm4-soname.patch (tcl-8.3.5-tclm4-soname.patch,534 bytes, patch)
2006-12-11 18:53 UTC, Yuri Vasilevski (RETIRED)
Details | Diff
tcl-8.4.13.ebuild.patch (tcl-8.4.13.ebuild.patch,673 bytes, patch)
2006-12-11 18:54 UTC, Yuri Vasilevski (RETIRED)
Details | Diff
tk-8.4.13.ebuild.patch (tk-8.4.13.ebuild.patch,630 bytes, patch)
2006-12-11 18:55 UTC, Yuri Vasilevski (RETIRED)
Details | Diff
tcl-8.4.14-tclm4-soname.patch (tcl-8.4.14-tclm4-soname.patch,390 bytes, patch)
2007-05-21 17:10 UTC, MT
Details | Diff
tcl-8.4.14.ebuild.patch (patch,282 bytes, patch)
2007-05-21 17:15 UTC, MT
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sandro Bonazzola (RETIRED) gentoo-dev 2006-03-12 12:30:03 UTC
QA Notice: the following shared libraries lack a SONAME
 /var/tmp/portage/tcl-8.4.12/image/usr/lib64/libtcl8.4.so

QA Notice: the following shared libraries lack a SONAME
 /var/tmp/portage/tk-8.4.12/image/usr/lib64/libtk8.4.so

emerge --info:
Portage 2.1_pre6-r1 (default-linux/amd64/2006.0, gcc-3.4.5, glibc-2.4-r0, 2.6.15-gentoo-r7 x86_64)
=================================================================
System uname: 2.6.15-gentoo-r7 x86_64 AMD Athlon(tm) 64 Processor 3500+
Gentoo Base System version 1.12.0_pre16
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS=" -march=athlon64 -Os -pipe -fforce-addr -ffast-math -msse2 -ftracer -m3dnow "
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS=" -march=athlon64 -Os -pipe -fforce-addr -ffast-math -msse2 -ftracer -m3dnow "
DISTDIR="/home/ftp/distfiles"
FEATURES="autoconfig ccache collision-protect cvs distlocks elog metadata-transfer multilib-strict parallel-fetch sandbox sfperms sign strict stricter test userpriv"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/ http://gentoo.osuosl.org/ http://mirror.ovh.net/gentoo-distfiles/ ftp://ftp.heanet.ie/pub/gentoo/ http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/ ftp://ftp.unina.it/pub/linux/distributions/gentoo http://gentoo.ngi.it http://mirror.switch.ch/ftp/mirror/gentoo/ ftp://mirror.switch.ch/mirror/gentoo/ "
LANG="it_IT.utf8"
LINGUAS="it"
PKGDIR="/home/ftp/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/overlays/migration-overlay /usr/local/overlays/tinyos /usr/local/overlays/gentoo-java-experimental"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="amd64 7zip X a52 aac aalib acl acpi alsa apache2 arts asf audiofile avi berkdb bitmap-fonts bzip2 cairo canvas ccache cdb cddb cdparanoia cdr chroot cpudetection crypt css cups curl dba dbus dga directfb dlloader dri dts dv dvd dvdr dvdread dynagraph emboss encode erandom esd exif expat extrafilters fame ffmpeg firefox flac fltk foomaticdb gd gdbm ggi gif gimp gimpprint glibc-omitfp glut gmp gnokii gnome gnutls gphoto2 gpm graphviz gstreamer gtk gtk2 gtkhtml guile hal idn ieee1394 imagemagick imlib ipv6 ithreads java jbig jikes jpeg jpeg2k justify kde kdeenablefinal lcms ldap libcaca linuxthreads-tls lm_sensors logitech-mouse logrotate lzo lzw lzw-tiff mad mailwrapper mbox mdb mhash mikmod mjpeg mmap mng motif mozsvg mp3 mpeg mpm-worker musicbrainz mysql ncurses nls nptl nptlonly numeric nvidia odbc offensive ogg on-the-fly-crypt openexr opengl oss pam pcre pcsc-lite pdf pdflib perl php png povray ppds python qt quicktime rdesktop readline rtc samba scanner sdl slang smp snmp speex spell ssl subversion svg sysfs tcltk tcpd test tetex tga theora threads tidy tiff timidity truetype truetype-fonts type1-fonts unicode usb userlocales utf8 v4l v4l2 vcd vda vorbis wmf xcomposite xine xinerama xml2 xmms xpm xscreensaver xv xvid yv12 zlib elibc_glibc input_devices_mouse input_devices_evdev input_devices_keyboard kernel_linux linguas_it userland_GNU video_cards_nvidia"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LC_ALL, LDFLAGS, MAKEOPTS
Comment 1 MATSUU Takuto (RETIRED) gentoo-dev 2006-09-23 22:48:08 UTC
fixed in 8.4.13.
Comment 2 Sandro Bonazzola (RETIRED) gentoo-dev 2006-09-29 11:55:40 UTC
Verified, closing.
Comment 3 Yuri Vasilevski (RETIRED) gentoo-dev 2006-12-11 18:52:50 UTC
- dev-lang/tk-8.4.13 does not sets SONAME in /usr/lib/libtk8.4.so, there is a patch in portage but it has no effect as it changes a .m4 file but configure is not regenerated.

- dev-lang/tcl-8.4.13 does not sets SONAME in /usr/lib/libtcl8.4.so, there is a wrong patch in portage that also has no effect as it changes a .m4 file but configure is not regenerated.

The patch in portage does not sets the right SONAME (note the "Wl,-soname,dummy ar" part), so compilation fails:

x86_64-pc-linux-gnu-gcc -pipe -shared -Wl,-soname,dummy ar -o libtcl8.4.so regcomp.o regexec.o regfree.o regerror.o tclAlloc.o tclAsync.o tclBasic.o tclBinary.o tclCkalloc.o tclClock.o tclCmdAH.o tclCmdIL.o tclCmdMZ.o tclCompCmds.o tclCompExpr.o tclCompile.o tclDate.o tclEncoding.o tclEnv.o tclEvent.o tclExecute.o tclFCmd.o tclFileName.o tclGet.o tclHash.o tclHistory.o tclIndexObj.o tclInterp.o tclIO.o tclIOCmd.o tclIOGT.o tclIOSock.o tclIOUtil.o tclLink.o tclListObj.o tclLiteral.o tclLoad.o tclMain.o tclNamesp.o tclNotify.o tclObj.o tclPanic.o tclParse.o tclParseExpr.o tclPipe.o tclPkg.o tclPosixStr.o tclPreserve.o tclProc.o tclRegexp.o tclResolve.o tclResult.o tclScan.o tclStringObj.o tclThread.o tclThreadAlloc.o tclThreadJoin.o tclStubInit.o tclStubLib.o tclTimer.o tclUtf.o tclUtil.o tclVar.o tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o tclUnixFile.o tclUnixPipe.o tclUnixSock.o tclUnixTime.o tclUnixInit.o tclUnixThrd.o  tclUnixNotfy.o  tclLoadDl.o  -ldl  -lpthread -lieee -lm   -Wl,-rpath,/usr/lib64
x86_64-pc-linux-gnu-gcc: ar: No such file or directory

This happens to me on all my systems, amd64 and x86.
Comment 4 Yuri Vasilevski (RETIRED) gentoo-dev 2006-12-11 18:53:48 UTC
Created attachment 103835 [details, diff]
tcl-8.3.5-tclm4-soname.patch

Fixed patch.
Comment 5 Yuri Vasilevski (RETIRED) gentoo-dev 2006-12-11 18:54:53 UTC
Created attachment 103836 [details, diff]
tcl-8.4.13.ebuild.patch

Diff to fixed ebuild.
Comment 6 Yuri Vasilevski (RETIRED) gentoo-dev 2006-12-11 18:55:39 UTC
Created attachment 103837 [details, diff]
tk-8.4.13.ebuild.patch

Diff to fixed ebuild.
Comment 7 Yuri Vasilevski (RETIRED) gentoo-dev 2007-01-19 16:20:46 UTC
The problem is still present in dev-lang/tcl-8.4.14 and dev-lang/tk-8.4.14.

Same patches work.
Comment 8 MATSUU Takuto (RETIRED) gentoo-dev 2007-04-27 17:54:56 UTC
Fixed in cvs.
Comment 9 MT 2007-05-21 17:09:08 UTC
in reply to #8

on ~x86-fbsd the soname for dev-lang/tcl-8.4.14 is wrong:

ls -la /usr/lib/libtcl*
lrwxrwxrwx  1 root  wheel      12 May 21 13:51 /usr/lib/libtcl.so -> libtcl8.4.so
-r-xr-xr-x  1 root  wheel  712052 May 21 13:51 /usr/lib/libtcl8.4g.so
lrwxrwxrwx  1 root  wheel      15 May 21 13:51 /usr/lib/libtclstub.a -> libtclstub8.4.a
-rw-r--r--  1 root  wheel    1816 May 21 13:51 /usr/lib/libtclstub8.4g.a


it should be:

ls -la /usr/lib/libtcl*
lrwxrwxrwx  1 root  wheel      12 May 21 16:58 /usr/lib/libtcl.so -> libtcl8.4.so
-r-xr-xr-x  1 root  wheel  695136 May 21 16:58 /usr/lib/libtcl8.4.so
lrwxrwxrwx  1 root  wheel      15 May 21 16:58 /usr/lib/libtclstub.a -> libtclstub8.4.a
-rw-r--r--  1 root  wheel    1816 May 21 16:58 /usr/lib/libtclstub8.4.a

this happen because the ebuild use the tcl-8.3.5.tclm4-soname.patch which is wrong (why the ebuild must use a patch from the 8.3.5 branch? the file tcl.m4 from v8.4.14 is totaly diffent from the one provided by v8.3.5 and the -Wl,soname is lost).

attached there is the right patch set that fix the problem.
Comment 10 MT 2007-05-21 17:10:49 UTC
Created attachment 119898 [details, diff]
tcl-8.4.14-tclm4-soname.patch
Comment 11 MT 2007-05-21 17:15:14 UTC
Created attachment 119901 [details, diff]
tcl-8.4.14.ebuild.patch

NOTE: i'm not sure but i think that "epatch ${FILESDIR}"/${PN}-8.3.5-tclm4-soname.patch" can be erased from the ebuild, but i'm not into the tcl world to confirm it, maybe the tcl herd can.