Summary: | [QA] dev-lang/tcl-8.4.12, dev-lang/tk-8.4.12, libraries lacking SONAME | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sandro Bonazzola (RETIRED) <sanchan> |
Component: | [OLD] Library | Assignee: | TCL/TK Project <tcltk> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | toffanin.mauro, yvasilev |
Priority: | High | ||
Version: | 2006.0 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 98715, 178853 | ||
Attachments: |
tcl-8.3.5-tclm4-soname.patch
tcl-8.4.13.ebuild.patch tk-8.4.13.ebuild.patch tcl-8.4.14-tclm4-soname.patch tcl-8.4.14.ebuild.patch |
Description
Sandro Bonazzola (RETIRED)
2006-03-12 12:30:03 UTC
fixed in 8.4.13. Verified, closing. - 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. Created attachment 103835 [details, diff]
tcl-8.3.5-tclm4-soname.patch
Fixed patch.
Created attachment 103836 [details, diff]
tcl-8.4.13.ebuild.patch
Diff to fixed ebuild.
Created attachment 103837 [details, diff]
tk-8.4.13.ebuild.patch
Diff to fixed ebuild.
The problem is still present in dev-lang/tcl-8.4.14 and dev-lang/tk-8.4.14. Same patches work. Fixed in cvs. 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. Created attachment 119898 [details, diff]
tcl-8.4.14-tclm4-soname.patch
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.
|