在tensorflow gpu中找不到“CXXABI_1.3.8”-从sou安装

2024-05-07 03:23:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我重新安装了Python2。 当'python-c'import tensorflow''

ImportError: /home/jj/anaconda2/bin/../lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/jj/anaconda2/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so)

环境

  • CUDA8.0版
  • cuDNN 5.1标准
  • 合同一般条件5.4.1
  • 张量流r0.10
  • 水蟒2:4.2

下面是bashrc文件

  • 导出路径=“/home/jj/anaconda2/bin:$PATH”
  • 导出CUDA_HOME=/usr/local/CUDA-8.0
  • 导出路径=/usr/local/cuda-8.0/bin${PATH:+:${PATH}
  • 导出LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}

Tags: path路径homebinlibusrlocaltensorflow
3条回答

似乎是水蟒4号的问题

您可以更新libgccpackage以匹配本地版本

conda update libgcc

但这需要在下次您update anaconda时“由于依赖关系冲突”降级。

或者可以屏蔽anaconda libstdc++,以便使用系统的libstdc++

cd ~/anaconda2/lib
mv libstdc++.so libstdc++.so.bkp
mv libstdc++.so.6 libstdc++.so.6.bkp

您可以进一步(可选)在anaconda库中直接创建一个软链接

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6

这对我来说同样适用于源代码构建(非gpu支持)tensorflow、Ubuntu 16.04、Anaconda 4.2.0。

来源:类似于Building TensorFlow from source on Ubuntu 16.04 w/ GPU: `GLIBCXX_3.4.20' not found的问题,后者也指向this

我通过复制包含版本CXXABI_1.3.8libstdc++.so.6文件解决了这个问题。

请先尝试运行以下搜索命令:

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep CXXABI_1.3.8

如果它返回CXXABI_1.3.8。然后你就可以复印了。

$ cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /home/jj/anaconda2/bin/../lib/libstdc++.so.6

我在这里寻找我的问题,相同的错误信息,但不同的应用程序。

我的应用程序给出了/lib64/libstdc++.so.6的错误,它指向/lib64/libstdc++.so.6.0.19

在阅读了其他网站之后,我发现我不得不“替换”到我的/lib64/libstdc++.so.6中指出的位置,并且在我的conda环境中找到了一个新版本。。。所以:

(sudo) rm /system/path/to/lib/libstdc++.so.6
(sudo) ln -s /path/to/conda/lib/libstdc++.so.6.0.26  /system/path/to/lib/libstdc++.so.6

所以我想这不是最好的解决方案,但随着用户最终获得应用程序的工作。

我也读过here,这是:

Set the LD_LIBRARY_PATH before you run TF, so this lib would only be effective in this shell.

希望能帮上忙。

相关问题 更多 >