Bug 54699 - shared objects, compiled with libtcl, have wrong soname
shared objects, compiled with libtcl, have wrong soname
Status: CLOSED RAWHIDE
Product: Red Hat Linux
Classification: Retired
Component: tcltk (Show other bugs)
7.3
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jens Petersen
David Lawrence
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2001-10-16 12:30 EDT by Leonid Kanter
Modified: 2007-04-18 12:37 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2003-01-16 03:12:09 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Leonid Kanter 2001-10-16 12:30:29 EDT
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
tcl-8.3.3-65
tcl-8.3.3-65
postgresql-tcl-7.1.3-2

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

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):

tcl-8.3.3-65
Comment 1 Eido Inoue 2001-10-17 13:35:26 EDT
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 03:04:11 EST
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 03:12:09 EST
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.