版本`CXXABI_1.3.8'未找到(所要求的...) [英] version `CXXABI_1.3.8' not found (required by ...)

查看:5062
本文介绍了版本`CXXABI_1.3.8'未找到(所要求的...)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我运行我的程序下进行编译,我得到以下错误:


  

./ PROG:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:版本 CXXABI_1.3.8'未找到(由./prog要求)
  ./prog:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:版本
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)


我都升压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: versionGLIBCXX_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屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆