当我在编译后运行程序时,出现以下错误:
./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: 版本CXXABI_1.3.8' not found (required by ./prog)
./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
GLIBCXX_3.4.19' 未找到(./prog 要求)
./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: 找不到版本 `GLIBCXX_3.4.20' (/home/arman/lib/boost_1_55_0/stage/lib/libboost_serialization.so.1.55 需要.0)
我安装了 boost 1.55.0 和 gcc 4.9.0~/lib/boost_1_55_0
and ~/lib/gcc-4.9.0
分别,我猜这就是我遇到问题的原因,但我不确定如何解决它。
my ~/.profile
包含以下行:
导出 LD_LIBRARY_PATH=/home/user/lib/boost_1_55_0/stage/lib:$LD_LIBRARY_PATH
GCC 4.9 引入了比您的系统 libstdc++ 更新的 C++ ABI 版本,因此您需要通过将该路径添加到LD_LIBRARY_PATH
。不幸的是,我无法直接告诉您 GCC 4.9 安装的 libstdc++ 所在的位置,因为这取决于您如何配置 GCC。所以你需要以下风格的东西:
export LD_LIBRARY_PATH=/home/user/lib/gcc-4.9.0/lib:/home/user/lib/boost_1_55_0/stage/lib:$LD_LIBRARY_PATH
请注意,实际路径可能有所不同(其中可能隐藏着一些子目录,例如“x86_64-unknown-linux-gnu/4.9.0”或类似的)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)