我有一个关于libstdc++.so
.
我安装了新版本的 gcc 并尝试编译 C++ 代码。编译工作,但是当我尝试执行二进制文件(m5.opt
是它的名字)时,我得到了以下错误:
build/ALPHA_SE/m5.opt: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by build/ALPHA_SE/m5.opt).
我需要更换libstdc++.so
吗?如果是这样,我在哪里可以下载我想要的版本?在 GCC 网站上,他们说 libstdc++ 现在是 gcc 的一部分。
细节
GCC:我之前有 gcc 4.1.2,但我下载了 gcc 4.2.4。从我执行的未解压的 gcc 目录中./configure
;制作; 须藤使安装`。当我尝试使用 gcc 或 g++ 编译时,它的默认版本仍然是 4.1.2。为了克服这个问题,我替换了一些链接:
mv /usr/bin/gcc /usr/bin/gcc_bak
ln -s /usr/local/bin/gcc gcc
mv /usr/bin/g++ /usr/bin/g++_bak
ln -s /usr/local/bin/g++ g++
GLIBC(++) -- libstdc++:
/usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.8
/usr/local/lib/libstdc++.so -> libstdc++.so.6.0.9
/lib/libc.so.6 -> libc-2.5.so -> libc-2.5.so
Linux版本:
uname -a
给出:
Linux madmax 2.6.18-128.4.1.el5 #1 SMP Tue Aug 4 12:51:10 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux