/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Issues related to applications and software problems
Post Reply
tbalz
Posts: 29
Joined: 2010/01/15 15:54:34

/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by tbalz » 2012/08/02 14:20:46

Hi Guys,

I'm running RHEL6 and Centos 6 and I get the following error

/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

on one of the programs I need to run on the system. I'm currently at gcc version 4.7.0. When i do the following command "strings /usr/lib/libstdc++.so.6 | grep GLIBCXX"

I get: so it looks like 3.4.15 is there. Any ideas on how I can correct this issue?

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

pschaff
Retired Moderator
Posts: 18276
Joined: 2006/12/13 20:15:34
Location: Tidewater, Virginia, North America
Contact:

/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by pschaff » 2012/08/03 13:36:03

[code]# rpm -q gcc
gcc-4.4.6-4.el6.x86_64
# strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
# rpm -qf /usr/lib/libstdc++.so.6
libstdc++-4.4.6-4.el6.i686
# rpm -q centos-release
centos-release-6-3.el6.centos.9.x86_64[/code]
[url=http://wiki.centos.org/FAQ/General#head-472ce8446ebcfc82ca1800f775ba0e629ac835c7]FAQ#20. Where can I get the latest version of XyZ.rpm for CentOS? I cannot find it anywhere.[/url]

If you break it you get to keep all the pieces.

rjt69
Posts: 27
Joined: 2013/07/12 18:03:14
Location: Omaha, NE
Contact:

Re: /lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by rjt69 » 2013/07/12 18:27:36

i never found 3.4.15 on my CentOS6.4 machine, is it possible it is only on your actual redhat machine?

$ rpm -q centos-release
centos-release-6-4.el6.centos.10.x86_64
$ rpm -qf /usr/lib/libstdc++.so.6.0.13
libstdc++-4.4.7-3.el6.i686

$ yum --enablerepo=\* --disablerepo=Dropbox --disablerepo=c6-media search all compat-libstdc++
===================== Matched: compat-libstdc++ ==========
compat-libstdc++-296.i686 : Compatibility 2.96-RH standard C++ libraries
compat-libstdc++-33.i686 : Compatibility standard C++ libraries
compat-libstdc++-33.x86_64 : Compatibility standard C++ libraries

$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX_3.4.1
GLIBCXX_3.4.1
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13

No GLIBCXX_3.4.15

Is there someplace else to get 3.4.15 since it seems upstream is not supplying it? Is it in some testing repo?
Does yum search all result in a compat-libstdc++34 for you on some machine?

User avatar
TrevorH
Site Admin
Posts: 33202
Joined: 2009/09/24 10:40:56
Location: Brighton, UK

Re: /lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by TrevorH » 2013/07/12 20:14:41

You are chasing this from the wrong end. The problem is that the program you are trying to run is compiled and linked against the wrong copy of the C runtime. The C runtime on CentOS is exactly how it should be and does not support that level of code. The solution is not to change glibc (which effectively means throwing away your entire operating system and rebuilding it) but to use a version of the application that is actually built to run on your o/s. If there is an SRPM for the package you are trying to run then rebuilding that on CentOS 6 will produce a version that will work.

User avatar
jlehtone
Posts: 4523
Joined: 2007/12/11 08:17:33
Location: Finland

Re: /lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by jlehtone » 2013/07/14 12:06:39

[quote]tbalz wrote:
I'm currently at gcc version 4.7.0.[/quote]
That is interesting, because CentOS 6 (and RHEL 6) have gcc 4.4.7, and the optional devtoolset-1.1 provides gcc 4.7.2. Furthermore, your error message mentions "/lib/libstdc++.so.6", but you do check "/usr/lib/libstdc++.so.6" for strings. A 32-bit environment with custom binaries in odd places?

Darr247
Posts: 27
Joined: 2011/12/01 14:29:34

Re: /lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by Darr247 » 2013/12/08 12:59:44

A 32-bit environment with custom binaries in odd places?
That's how the scripts available from http://chrome.richardlloyd.org.uk/ do it, too... as I recall, his scripts grab the libstdc++ files from the fedora 15 repos to enable installing/updating Chrome 28 and higher from Google's repos into CentOS 6.x, and relocates them to /opt/google/chrome/lib so
$ strings /usr/lib64/libstdc++.so.6 | grep GLIBC
still returns the 'stock'
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

messages, but if you change that to
$ strings /opt/google/chrome/lib/libstdc++.so.6 | grep GLIBC
then you get the extra/newer versions showing up like in the message from tbalz...

Even though that segregates the newer libs from the 'stock' libs, at least one guy on the centos@centos.org mailing list declared the script's author a criminal. :roll:

marco76
Posts: 6
Joined: 2014/08/16 22:42:26

Re: /lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

Post by marco76 » 2014/08/18 09:50:18

My advice is to carefully handle this library, or not handle it at all, as it may lead to full OS failure. I followed some hints on other forums and I had to reinstall my OS 2 times in a row because of handling with gcc libs, so my advice is not to touch it. If some .rpm that you are trying to install gives you this error, most likely is that is not supported by your Linux version, and I found this out the hard way by trying to install KingSoft Office and Grive on my CentOS 6.5 Linux. Anyway, you can try to follow this tip that I found in other forum that I did not test yet, but seems a good tip:

"Just add symlink to the libc.so.6 file as following:
sudo ln -s /lib/i386-linux-gnu/libc.so.6 /lib/libc.so.6
The same goes for other missing files still on the system, in my case Matlab was missing the file, the problem is gone now."

Adding a link is not very intrusive and should work. Give a try and share the results pls ;)

Farewell.

Post Reply