LinuxQuestions.org
Help answer threads with 0 replies.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 09-12-2011, 08:59 AM   #1
dwhitney67
Senior Member
 
Registered: Jun 2006
Location: Maryland
Distribution: Kubuntu, Fedora, RHEL
Posts: 1,522

Rep: Reputation: 332Reputation: 332Reputation: 332Reputation: 332
Need further help understanding GLIBC issue


When I attempt to run an executable program, I get the following errors:
Code:
./app: /lib/tls/libpthread.so.0: version `GLIBC_2.1' not found (required by ./app)
./app: /lib/tls/libpthread.so.0: version `GLIBC_2.0' not found (required by ./app)
./app: /lib/tls/libc.so.6: version `GLIBC_2.1' not found (required by ./app)
./app: /lib/tls/libc.so.6: version `GLIBC_2.0' not found (required by ./app)
I have a basic understanding of what is going on, however I'm unsure how to verify which version of GLIBC my RHEL 4 system is using.

I've used the rpm utility to check on which glibc packages are installed on my system, however I'm not sure if the version number associated with these package correlates in any way to the version number required by the libpthread and libc libraries.
Code:
$ rpm -qa | grep -i glibc
glibc-common-2.3.4-2.54
glibc-headers-2.3.4-2.54
glibc-devel-2.3.4-2.54
glibc-kernheaders-2.4-9.1.103.EL
glibc-2.3.4-2.54
Can someone help me shed some light on what exactly is the deficiency on my system? I'm still waiting to hear from one of my co-workers as to where the app was originally built, and whether we have the source code for it. I believe it is a COTS app.
 
Old 09-12-2011, 09:34 AM   #2
Peverel
Member
 
Registered: May 2009
Location: Chelmsford, England
Distribution: OpenSuse 11.3, 11.4 and 12.2
Posts: 98

Rep: Reputation: 21
It seems that it was originally compiled with an earlier version of GLIBC than you have in your system, so that it expects an earlier version of /lib/tls/libpthread.so.0 than you have; yours seems to be GLIBC 2.3. Do you actually have a directory /lib/tls? (I don't; my version of GLIBC is 2.10, where libpthread.so.0 is in the lib directory). If you do not have /lib/tls. then maybe you could get a copy or create it and put the GLIBC 2.1 run-time libraries into it.

Actually, a web search suggests that tls is a compatibility package for programs using GLIBC 2.0 or 2.1, so maybe you can find a version for your system. Apparently, tls originally held thread-related libraries, which were later merged into GLIBC, so it is likely you do not have /lib/tls.

Last edited by Peverel; 09-12-2011 at 09:51 AM. Reason: added last sentence
 
Old 09-12-2011, 09:53 AM   #3
dwhitney67
Senior Member
 
Registered: Jun 2006
Location: Maryland
Distribution: Kubuntu, Fedora, RHEL
Posts: 1,522

Original Poster
Rep: Reputation: 332Reputation: 332Reputation: 332Reputation: 332
Yes, my system does have a /lib/tls directory, with the following contents:
Code:
$ ls -l
total 2020
drwxr-xr-x  2 root root    4096 Mar  4  2011 i486/
drwxr-xr-x  2 root root    4096 Mar  4  2011 i586/
drwxr-xr-x  3 root root    4096 Mar  4  2011 i686/
-rwxr-xr-x  1 root root 1547476 Jan 19  2011 libc-2.3.4.so*
lrwxrwxrwx  1 root root      13 Mar  3  2011 libc.so.6 -> libc-2.3.4.so*
-rwxr-xr-x  1 root root  214060 Jan 19  2011 libm-2.3.4.so*
lrwxrwxrwx  1 root root      13 Mar  3  2011 libm.so.6 -> libm-2.3.4.so*
-rwxr-xr-x  1 root root  107888 Jan 19  2011 libpthread-2.3.4.so*
lrwxrwxrwx  1 root root      19 Mar  3  2011 libpthread.so.0 -> libpthread-2.3.4.so*
-rwxr-xr-x  1 root root   50716 Jan 19  2011 librt-2.3.4.so*
lrwxrwxrwx  1 root root      14 Mar  3  2011 librt.so.1 -> librt-2.3.4.so*
-rwxr-xr-x  1 root root   32056 Jan 19  2011 libthread_db-1.0.so*
lrwxrwxrwx  1 root root      19 Mar  3  2011 libthread_db.so.1 -> libthread_db-1.0.so*
lrwxrwxrwx  1 root root      14 Jul  9  2009 libuuid.so.1 -> libuuid.so.1.2*
-rwxr-xr-x  1 root root   13792 Jan 27  2009 libuuid.so.1.2*
 
Old 09-12-2011, 10:54 AM   #4
ta0kira
Senior Member
 
Registered: Sep 2004
Distribution: FreeBSD 9.1, Kubuntu 12.10
Posts: 3,078

Rep: Reputation: Disabled
Quote:
Originally Posted by dwhitney67 View Post
I've used the rpm utility to check on which glibc packages are installed on my system, however I'm not sure if the version number associated with these package correlates in any way to the version number required by the libpthread and libc libraries.
Version numbers are generally auto-generated by libtool based on the interface version, iteration, and backward-compatibility. This is so linking can be done correctly regardless of the versioning scheme of the project. It could be that the two coincide for glibc. Try ldd --version (taken from here).
Kevin Barry
 
Old 09-12-2011, 11:00 AM   #5
dwhitney67
Senior Member
 
Registered: Jun 2006
Location: Maryland
Distribution: Kubuntu, Fedora, RHEL
Posts: 1,522

Original Poster
Rep: Reputation: 332Reputation: 332Reputation: 332Reputation: 332
My system does indeed have Glibc 2.3.4:
Code:
$ ldd --version
ldd (GNU libc) 2.3.4
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
And when using ldd on the application that is causing grief:
Code:
$ ldd wrapper
./app: /lib/tls/libpthread.so.0: version `GLIBC_2.1' not found (required by ./app)
./app: /lib/tls/libpthread.so.0: version `GLIBC_2.0' not found (required by ./app)
./app: /lib/tls/libc.so.6: version `GLIBC_2.1' not found (required by ./app)
./app: /lib/tls/libc.so.6: version `GLIBC_2.0' not found (required by ./app)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x008b6000)
        libc.so.6 => /lib/tls/libc.so.6 (0x00111000)
        /lib/ld-linux.so.2 (0x0063c000)
I've submitted a query to my system administrator to see if a) they've seen this problem before, and b) if they have a solution that I can use and that can be provided to my customers.
 
Old 09-12-2011, 12:01 PM   #6
ta0kira
Senior Member
 
Registered: Sep 2004
Distribution: FreeBSD 9.1, Kubuntu 12.10
Posts: 3,078

Rep: Reputation: Disabled
It doesn't sound like a matter of having a "high enough" version; it's a matter of having an exact version, i.e. glibc 2.1.x.
Kevin Barry
 
  


Reply

Tags
glibc


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] glibc 2.14 compilation issue kapsikum Programming 11 08-25-2011 06:18 AM
glibc Dependency Issue siwelb Red Hat 2 09-11-2009 02:38 PM
Understanding file permissions issue Laserjock Linux - Newbie 2 05-11-2009 11:03 AM
glibc.so.6 issue on RH Enterprise Linux 4 :( Ofers Red Hat 3 04-18-2007 06:00 AM
Wifi issue w/ SuSE 10 on Acer Aspire 3004wlmi: noob not understanding ndiswrapper JazzLad Linux - Laptop and Netbook 39 04-25-2006 07:10 PM


All times are GMT -5. The time now is 07:42 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration