Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Update to glibc-2.3.5 broke glibc-2.0 compatibility ?!
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
raf
Apprentice
Apprentice


Joined: 16 Jan 2005
Posts: 158

PostPosted: Tue Jun 07, 2005 1:07 pm    Post subject: Update to glibc-2.3.5 broke glibc-2.0 compatibility ?! Reply with quote

Hi,

I have a bin-only commercial program which has been compiled with an older version of glibc. In order to get around this, I compiled my glibc-2.3.4 with +nptl -nptlonly flags, this creates a nptl library in /lib/tls/ and linuxthreads library in /lib/ great! Now to run my bin-only program I would execute:

Code:
export LD_ASSUME_KERNEL=2.4.19

and the application would run without any problems.

Last night I upgraded my system to glibc-2.3.5 and gcc-3.4.4 and this no longer works! My entire system which was re-compiled from source works perfectly, but my bin-only application returns with

Code:
symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference

irrespective of wheather I run LD_ASSUME_KERNEL or not! Has something changed in the latest glibc-2.3.5 that broke this compatibility? What can I do? I really need this bin-only program!

-Raf
Back to top
View user's profile Send private message
raf
Apprentice
Apprentice


Joined: 16 Jan 2005
Posts: 158

PostPosted: Tue Jun 07, 2005 2:23 pm    Post subject: More info... Reply with quote

It seems the glibc-2.3.5 ebuild is messed up. It does not create a linuxthread version properly:

From a (I believe to be reliable) source:
Code:
readelf -s /lib/libc.so.6| grep errno

When nptl is enabled, libc.so has
Code:
 343: 00000008     4 TLS     GLOBAL DEFAULT   23 errno@@GLIBC_PRIVATE
7802: 00000008     4 TLS     GLOBAL DEFAULT   23 errno

With Linuxthreads, libc.so has
Code:
 1046: 0012c600     4 OBJECT  GLOBAL DEFAULT   27 _errno@GLIBC_2.0
 1174: 0012c600     4 OBJECT  GLOBAL DEFAULT   27 errno@GLIBC_2.0


My new libc-2.3.5.so
Code:
   276: 000e9853   254 FUNC    GLOBAL DEFAULT   11 clnt_perrno@@GLIBC_2.0
   291: 00000008     4 TLS     GLOBAL DEFAULT   19 errno@@GLIBC_PRIVATE
   852: 0000001c     4 TLS     GLOBAL DEFAULT   19 h_errno@@GLIBC_PRIVATE
  1529: 000dd500    25 FUNC    GLOBAL DEFAULT   11 __h_errno_location@@GLIBC_2.0
  1843: 000156d0    25 FUNC    GLOBAL DEFAULT   11 __errno_location@@GLIBC_2.0
  2162: 000e9494   120 FUNC    GLOBAL DEFAULT   11 clnt_sperrno@@GLIBC_2.0

My old libc-2.3.4.so
Code:
   274: 000ce6bc   128 FUNC    GLOBAL DEFAULT   11 clnt_perrno@@GLIBC_2.0
   994: 0010d360     4 OBJECT  GLOBAL DEFAULT   29 _errno@GLIBC_2.0
  1120: 0010d360     4 OBJECT  GLOBAL DEFAULT   29 errno@GLIBC_2.0
  1527: 000c3594    40 FUNC    GLOBAL DEFAULT   11 __h_errno_location@@GLIBC_2.0
  1707: 0010ef70     4 OBJECT  GLOBAL DEFAULT   29 h_errno@GLIBC_2.0
  1842: 000157a0    40 FUNC    GLOBAL DEFAULT   11 __errno_location@@GLIBC_2.0
  2108: 0010ef70     4 OBJECT  WEAK   DEFAULT   29 _h_errno@GLIBC_2.0
  2161: 000ce653   105 FUNC    GLOBAL DEFAULT   11 clnt_sperrno@@GLIBC_2.0


Any thoughts anyone? I just used the +nptl and -nptlonly flags.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum