GLIBCXX_3.4.9' not found - 解决办法

Posted life-meer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GLIBCXX_3.4.9' not found - 解决办法相关的知识,希望对你有一定的参考价值。

在Linux中安装交叉编译器arm-linux-gcc 4.4.3,然后编译mini2440内核出错: 
/usr/lib/libstdc++.so.6: version GLIBCXX_3.4.9‘ not found: 
在RHEL5中安装交叉编译器arm-linux-gcc 4.4.3,然后编译mini2440内核出错: 
/usr/lib/libstdc++.so.6: version
GLIBCXX_3.4.9’ not found 
 
分析:

执行strings /usr/lib/libstdc++.so.6 | grep GLIBC 
返回结果没有GLIBCXX_3.4.9

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.0 
GLIBC_2.3 
GLIBC_2.4 
GLIBC_2.3.4 
GLIBC_2.1 
GLIBC_2.1.3 
GLIBC_2.2 
GLIBCXX_FORCE_NEW 
GLIBCXX_DEBUG_MESSAGE_LENGTH

执行ls -l /usr/lib/libstdc++.so.6 
发现/usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.8,其实这里需要使用 
libstdc++.so.6.0.10

分析得知:RHEL5自带的libstdc++.so.6指向的是libstdc++.so.6.0.8,版本太低。 
从网上下载安装包:libstdc++-4.3.2-7.i386.rpm,更新版本。

解决办法:

1、下载RPM包: 
http://kojipkgs.fedoraproject.org/packages/gcc/4.3.2/7/i386/libstdc++-4.3.2-7.i386.rpm

拷贝到虚拟机下/opt

2、提取包并将生成的libstdc++库文件考到到/usr/lib

rpm2cpio libstdc++-4.3.2-7.i386.rpm | cpio -idv

则在当前目录下生成./usr/lib目录,包含:libstdc++.so.6.0.10、软连接和 libstdc++.so.6 
将生成的libstdc++.so.6.0.10 、软连接和 libstdc++.so.6拷贝到/usr/lib下:

cp libstdc++* /usr/lib -a

查看: 
ls -l libstdc++.so.6 
显示: 
/usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.10

3、 
执行strings /usr/lib/libstdc++.so.6 | grep GLIBC 
返回结果包含:GLIBCXX_3.4.9

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 
GLIBC_2.0 
GLIBC_2.3 
GLIBC_2.4 
GLIBC_2.3.4 
GLIBC_2.1 
GLIBC_2.1.3 
GLIBC_2.2 
GLIBCXX_FORCE_NEW 
GLIBCXX_DEBUG_MESSAGE_LENGTH

4 这时,编译Mini2440内核正确运行。

以上是关于GLIBCXX_3.4.9' not found - 解决办法的主要内容,如果未能解决你的问题,请参考以下文章

解决Linux 环境 GLIBCXX_3.4.15' not found问题

ImportError_libstdc++.so.6_version_GLIBCXX_3.4.26_not_found

ImportError_libstdc++.so.6_version_GLIBCXX_3.4.26_not_found

ImportError_libstdc++.so.6_version_GLIBCXX_3.4.26_not_found

node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14‘ not found (required by node)报错解决

无root权限解决ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29‘ not found问题