当我尝试在 Python 中导入 tensorflow 时,出现此错误。
ImportError: libcudart.so.7.5: cannot open shared object file: No such file or directory
我正在使用 CUDA 8.0 RC 和 Ubuntu 16.04。
答案1
对于 Ubuntu 16.04 上的 CUDA 8.0,你必须从源代码构建和安装 TF,在配置阶段它将请求 CUDA 版本,请指定 8.0
答案2
正如它所说的TensorFlowdocs,通常应该通过 pip 安装 CUDA,然后按照说明安装 tensorflow 包。然后在使用前进行激活。
$ source ~/tensorflow/bin/activate # If using bash.
$ source ~/tensorflow/bin/activate.csh # If using csh.
(tensorflow)$ # Your prompt should change.
# Run Python programs that use TensorFlow.
...
# When you are done using TensorFlow, deactivate the environment.
(tensorflow)$ deactivate
希望这可以帮助。
答案3
另一个选择是删除 cuda 8.0 并安装 cuda 7.5,我就是这么做的。删除 cuda 8.0 -
sudo dpkg -r cuda
从 nvidia 网站下载 cuda 7.5。然后,执行-
sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb
sudo apt-get update
然后,进入突触数据包管理器,搜索cuda
。选择cuda-7-5
,然后安装所有相关内容。您必须从突触数据包管理器执行此操作。如果您sudo apt-get install
从终端执行此操作,它将再次安装 cuda 8.0。
希望这可以避免某些人因沮丧而拔头发。
答案4
您说您有 CUDA 8.0,但您的 libcudart 似乎是版本 7.5。您可能需要删除 CUDA 并重新开始,rm -rf /usr/local/cuda-<7.5 or 8.0>
确保将 <> 部分替换为您的实际版本并将其作为 运行sudo
。全新安装后,在 /etc/ld.so.conf.d/ 中创建一个 .conf 文件:
sudo nano /etc/ld.so.conf.d/nvidia.conf
添加此内容:
/usr/local/cuda-8.0/lib64
/usr/local/cuda-8.0/lib # you probably don't need this line; check
# if the directory exists
然后跑sudo ldconfig
。希望这能给你带来快乐。