版本'CXXABI_1.3.8'找不到(需要…)

当我编译后运行我的程序时,出现以下错误:

./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需要)

我同时在~/lib/boost_1_55_0~/lib/gcc-4.9.0分别安装了~/lib/boost_1_55_0~/lib/gcc-4.9.0 ,我猜这就是为什么我有问题,但是我不确定关于如何去解决它。

我的~/.profile包含以下行:

export 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'或类似的)。