在tensorflow-gpu中找不到''CXXABI_1.3.8' - 从源代码安装

use*_*955 12 python tensorflow cudnn

我重新安装了Anaconda2.当'python -c'导入tensorflow''时出现以下错误

ImportError:/home/jj/anaconda2/bin/../lib/libstdc++.so.6:找不到版本`CXXABI_1.3.8'(/home/jj/anaconda2/lib/python2.7/site-packages/需要tensorflow /蟒/ _pywrap_tensorflow.so)

环境

  • CUDA8.0
  • cuDNN 5.1
  • gcc 5.4.1
  • tensorflow r0.10
  • Anaconda2:4.2

以下是在bashrc文件中

  • export PATH ="/ home/jj/anaconda2/bin:$ PATH"
  • export CUDA_HOME =/usr/local/cuda-8.0
  • export PATH =/usr/local/cuda-8.0/bin $ {PATH:+:$ {PATH}}
  • export LD_LIBRARY_PATH =/usr/local/cuda-8.0/lib64 $ {LD_LIBRARY_PATH:+:$ {LD_LIBRARY_PATH}}

gev*_*ang 28

似乎是Anaconda 4的问题.*

您可以更新libgcc 软件包以匹配您的本地版本

conda update libgcc
Run Code Online (Sandbox Code Playgroud)

但是下次你需要降级"由于依赖性冲突" update anaconda.

或者你可以掩盖anaconda libstdc ++,以便使用你的系统的libstdc ++

cd ~/anaconda2/lib
mv libstdc++.so libstdc++.so.bkp
mv libstdc++.so.6 libstdc++.so.6.bkp
Run Code Online (Sandbox Code Playgroud)

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

ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6
Run Code Online (Sandbox Code Playgroud)

这些对我来说同样适用于内置源(非gpu支持)张量流,Ubuntu 16.04,Anaconda 4.2.0.

来源:在Ubuntu 16.04 w/GPU上从源代码构建TensorFlow的类似问题:找不到"GLIBCXX_3.4.20",这也指向了这一点.


Xer*_*Xer 13

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

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

$ 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

  • 那没有道理。如果您的`/ usr / lib / <platform> /`目录中包含具有适当ABI的共享库的副本,则需要该共享库的应用程序应该可以正常工作,而无需复制该文件。 (2认同)