版本`CXXABI_1.3.8'未找到(所要求的...) [英] version `CXXABI_1.3.8' not found (required by ...)
问题描述
当我运行我的程序下进行编译,我得到以下错误:
./ PROG:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:版本
CXXABI_1.3.8'未找到(由./prog要求)
GLIBCXX_3.4.19'未找到(由./prog要求)
./prog:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:版本
./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)
块引用>我都升压1.55.0,并安装在
〜/ lib中/ boost_1_55_0
和〜/ lib中/ GCC-4.9 GCC 4.9.0。 0
分别与我猜这就是为什么我有问题,但我不知道如何去修复它。我的
〜/ .profile文件
包含以下行:
导出LD_LIBRARY_PATH = / home / user中/ lib中/ boost_1_55_0 /舞台/ lib目录:$ LD_LIBRARY_PATH
块引用>解决方案GCC 4.9引入了一个新的C ++ ABI版本比你的系统的libstdc ++了,所以你需要告诉装载机通过添加路径使用图书馆的这个新版本到
LD_LIBRARY_PATH
。不幸的是,我不能告诉你直客那里的libstdc ++让您的GCC 4.9安装位置,因为这取决于你如何配置GCC。所以,你需要的东西风格:导出LD_LIBRARY_PATH = / home / user中/ lib目录/ GCC-4.9.0 / lib目录下:/ home / user中/ lib中/ boost_1_55_0 /舞台/ lib目录:$ LD_LIBRARY_PATH
请注意实际的路径可能会有所不同(可能有一些子目录下还有隐藏的,像`x86_64的未知-Linux的GNU / 4.9.0'或类似)。
When I run my program following a compile, I get the following error:
./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
CXXABI_1.3.8' not found (required by ./prog) ./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
GLIBCXX_3.4.19' not found (required by ./prog) ./prog: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/arman/lib/boost_1_55_0/stage/lib/libboost_serialization.so.1.55.0)I have both boost 1.55.0 and gcc 4.9.0 installed in
~/lib/boost_1_55_0
and~/lib/gcc-4.9.0
respectively, and I'm guessing this is why I'm having problems, but I'm unsure about how to go about fixing it.my
~/.profile
contains the following line:export LD_LIBRARY_PATH=/home/user/lib/boost_1_55_0/stage/lib:$LD_LIBRARY_PATH
解决方案GCC 4.9 introduces a newer C++ ABI version than your system libstdc++ has, so you need to tell the loader to use this newer version of the library by adding that path to
LD_LIBRARY_PATH
. Unfortunately, I cannot tell you straight off where the libstdc++ so for your GCC 4.9 installation is located, as this depends on how you configured GCC. So you need something in the style of:export LD_LIBRARY_PATH=/home/user/lib/gcc-4.9.0/lib:/home/user/lib/boost_1_55_0/stage/lib:$LD_LIBRARY_PATH
Note the actual path may be different (there might be some subdirectory hidden under there, like `x86_64-unknown-linux-gnu/4.9.0´ or similar).
这篇关于版本`CXXABI_1.3.8'未找到(所要求的...)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!