您的位置:首页 > 编程语言 > C语言/C++

/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.11' not found 解决

2012-11-22 10:43 337 查看
启动某个可执行文件时,经常出现如下错误。

./as_r: /lib64/libuuid.so.1: no version information available (required by ./as_r)
./as_r: /usr/lib64/libidn.so.11: no version information available (required by ./as_r)
./as_r: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by ./as_r)
./as_r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./as_r)
./as_r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./as_r)

选“./as_r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./as_r)" 来说明原因。

ldd as_r   查看as_r 依赖的库,以及本地不满足条件的库。

[search@SY-0347 as]$ ldd as_r
./as_r: /lib64/libuuid.so.1: no version information available (required by ./as_r)
./as_r: /usr/lib64/libidn.so.11: no version information available (required by ./as_r)
./as_r: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by ./as_r)
./as_r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./as_r)
./as_r: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./as_r)
libpthread.so.0 => /lib64/libpthread.so.0 (0x000000373aa00000)
libIce.so.34 => /usr/lib64/libIce.so.34 (0x0000003542800000)
libIceUtil.so.34 => /usr/lib64/libIceUtil.so.34 (0x0000003542400000)
libcrypto.so.10 => not found
libdl.so.2 => /lib64/libdl.so.2 (0x000000373a600000)
libidn.so.11 => /usr/lib64/libidn.so.11 (0x000000373d600000)
libssl.so.10 => not found
libboost_system.so.5 => not found
libmemcached.so.8 => not found
libaprutil-1.so.0 => /usr/lib64/libaprutil-1.so.0 (0x00002b579d828000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x0000003740600000)


strings /usr/lib64/libstdc++.so.6 | grep GLIBC 
 查看libstdc++.so.6的版本

[search@SY-0347 as]$ strings /usr/lib/libstdc++.so.6 | grep GLIBC
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
GLIBC_2.3
GLIBC_2.0
GLIBC_2.3.2
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.2
GLIBCXX_FORCE_NEW

[search@SY-0347 as]$ ll /usr/lib64/libstdc++.so.6
lrwxrwxrwx 1 root root 18 Jan 18  2012 /usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.8

解决:

从其他版本高的机器上拷贝libstdc++.so.6.0.13到本地,然后拷贝到/usr/lib下

并建立链接:
sudo ln -sf libstdc++.so.6.0.13  libstdc++.so.6

[search@SY-0085 ~]$ strings /usr/lib/libstdc++.so.6 | grep GLIBC
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.0
GLIBC_2.3
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐