我正在尝试将libstdc++.so.6从4.8.3更改为3.4.20。
我为什么要这么做?由于此错误:
文件"",第1行,位于ImportError: /usr/lib64/libstdc++.so.6:找不到版本`GLIBCXX_3.4.20‘( /var/lang/lib/python3.6/site-packages/lgraph.cpython-36m-x86_64-linux-gnu.so)需要
因此,我假设我必须更新版本。(我也试过安装gcc-8.0.1,但要么安装不正确,要么就是不起作用)。
Architecture: 2018 x86_64 x86_64 x86_64 GNU/Linux
Information:
$ bash-4.2# yum info gcc-c++
Installed Packages
Name : gcc-c++
Arch : noarch
Version : 4.8.3
Release : 3.20.amzn1
Size : 0.0
Repo : installed
From repo : amzn-main
Summary : C++ support for GCC
I also ran this command:
bash-4.2# /sbin/ldconfig -p | grep stdc++
libstdc++.so.6 (libc6,x86-64) => /usr/lib64/libstdc++.so.6
libstdc++.so (libc6,x86-64) => /usr/lib64/libstdc++.so
顺便说一句,我是在一个docker容器上做这一切的(如果这很重要的话)。我正在运行的程序/包是基于以下内容构建的:
Information:
Architecture: CEST 2018 x86_64 GNU/Linux
server:~$/sbin/ldconfig -p | grep stdc++
libstdc++.so.6 (libc6,x86-64) => /usr/lib/libstdc++.so.6
libstdc++.so.6 (libc6) => /usr/lib32/libstdc++.so.6
libstdc++.so.5 (libc6) => /usr/lib32/libstdc++.so.5
libstdc++.so (libc6,x86-64) => /usr/lib/libstdc++.so
libstdc++.so (libc6) => /usr/lib32/libstdc++.so
server:~$gcc --version
gcc (GCC) 8.1.1 20180531
发布于 2018-06-10 09:41:35
解决这个问题的最简单的方法是使用较旧的GCC安装(例如,像你运行的机器那样的GCC 4.8 )。另一种方法是简单地将所需的库复制到运行的机器上,并将它们的路径放在环境变量LD_LIBRARY_PATH
中。
发布于 2018-06-10 14:42:00
我通过在我的停靠容器上手动安装gcc-8.0.1并将正确的路径添加到LD_LIBRARY_PATH
修复了这个问题。
https://stackoverflow.com/questions/50779615
复制相似问题