Bug 54699 - shared objects, compiled with libtcl, have wrong soname
Summary: shared objects, compiled with libtcl, have wrong soname
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: tcltk
Version: 7.3
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Jens Petersen
QA Contact: David Lawrence
Depends On:
TreeView+ depends on / blocked
Reported: 2001-10-16 16:30 UTC by Leonid Kanter
Modified: 2007-04-18 16:37 UTC (History)
1 user (show)

Clone Of:
Last Closed: 2003-01-16 08:12:09 UTC

Attachments (Terms of Use)

Description Leonid Kanter 2001-10-16 16:30:29 UTC
Description of Problem:

shared objects, compiled with libtcl, have wrong soname. As a result,
package postgresql-tcl provides libtcl.so.0, that actually belongs to tcl.

[root@leon leon]# rpm -q --whatprovides libtcl.so.0

[root@leon leon]# rpm -qf `locate libtcl.so.0`

Looks like the problem is in tcl-8.3.3-makecfg.patch:

-               SHLIB_LD="${CC} -shared"
+               SHLIB_LD="${CC} -shared -Wl,-soname,libtcl.so.0"

I built scotty myself, and it provides libtcl.so.0 too.

Version-Release number of selected component (if applicable):


Comment 1 Eido Inoue 2001-10-17 17:35:26 UTC
The hard-coded soname is getting put in the tclConfig.sh script, so that every
program that builds there own private/extended tcl interpreter gets the same
soname, which the loader finds.

Removing the -Wl,soname from the tclConfig and keeping it in the tcl Makefile
only will fix the problem.

Comment 2 Jens Petersen 2002-12-10 08:04:11 UTC
In tcltk-8.3.5-76 and later, the upstream library naming
is now being used (ie libtcl8.3.so, libtk8.3.so).
However for the time being there a 8.0 compatibility symlinks
left in (libtcl.so.0 -> libtcl8.3.so, etc).  These will
probably be removed later.  The above mentioned makecfg hardcoding
patches are no longer included.

Comment 3 Jens Petersen 2003-01-16 08:12:09 UTC
DT_SONAMES were added to tcltk libs in 8.3.5-84 btw.
The aforementioned symlinks are now libtcl.so -> libtcl8.3.so, etc. 

Note You need to log in before you can comment on or make changes to this bug.