在使用conda或者pip方法安装tensorflow成功之后,已经安装了Tensorflow之后在电脑打开python…然后报错(无法直接导入tensorflow),报错为:

import tensorflow
Traceback (most recent call last):
  File "/home/wbj/.conda/envs/python35/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/wbj/.conda/envs/python35/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/wbj/.conda/envs/python35/lib/python3.5/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/home/wbj/.conda/envs/python35/lib/python3.5/imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "/home/wbj/.conda/envs/python35/lib/python3.5/imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory

还是tensorflow的问题,由于错估计了自己的CPU能力,因此选择了新的tensorflow版本,经过一番努力下,成功将tensorflow 1.5.0版本安装到自己的电脑上了。

以下所有操作均需要超级用户root,建议直接使用sudo su切换到root用户下。

首先 cuda自带的卸载程序位置在/usr/local/cuda-10.0/bin 【不同的版本需要修改cuda-后面的参数】

直接到路径下面执行

cd /usr/local/cuda-10.0/bin
./uninstall_cuda_10.0.pl

等待一段时间卸载,但这还没有卸载干净,需要我们手动删除一些杂项文件。

1.安装时创建的Samples程序集

rm -rf /home/wbj/PersionFile/Code/NVIDIA_CUDA-10.0_Samples/
#不同的用户安装会有不同的位置#
#一般来说默认是如下位置:
rm -rf ~/NVIDIA_CUDA-10.0_Samples/

2.卸载后留在/usr/local位置杂余文件

直接找到名字有cuda的进行删除即可。

3.~/.bashrc环境变量

sudo vim ~/.bashrc

然后将cuda相关的直接注释或者删除。

如此,cuda的删除工作就结束了,接下来是选择合适版本的安装工作

选择版本前,请看一下这张表:

如此观察得到,最常用的CUDA版本其实还是9,因此【因此个毛阿,因为我用1.5.0的tensorflow】,我们将以9为例进行安装。

进入NVIDIA的CUDA安装官网找到往期版本https://developer.nvidia.com/cuda-toolkit-archive

选中一个合适的版本,对于我而言,我选择的是CUDA9.0版本

根据自己的系统选择合适的下载文件,然后进入下载文件夹,输入命令

sudo bash cuda_9.0.176_384.81_linux.run 

进行安装–然后中途报错了

Do you accept the previously read EULA?
accept/decline/quit: accept

…………

Error: unsupported compiler: 7.4.0. Use --override to override this check.
Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so
Missing recommended library: libGL.so

Error: cannot find Toolkit in /usr/local/cuda-9.0

这是因为CUDA9.0使用的是GCC4.8的标准,因此我们还需要为gcc编译器进行降级处理

先进行安装:

sudo apt install gcc-5
sudo apt install g++-5

然后试着查看一下版本,发现还是默认的gcc 7.3,这是因为没有修改软连接,修改一下就行了。 进入到/usr/bin目录下, 运行一下ls -l gcc*,可以看到gcc是指向gcc-7的,因此执行以下命令进行修改连接

sudo mv gcc gcc.bak #备份 
sudo ln -s gcc-5 gcc #重新链接gcc

sudo mv g++ g++.bak #备份 
sudo ln -s g++-5 g++ #重新链接g++

换一个方式看一下版本,发现已经被修改过去了。

gcc --version
gcc (Ubuntu 5.5.0-12ubuntu1) 5.5.0 20171010
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

重新执行我们的CUDA9.0安装程序。

cd ~/Downloads/
sudo bash cuda_9.0.176_384.81_linux.run 

简单介绍一下过程:

#询问你是否接受以上的协议,填写accept接受
Do you accept the previously read EULA?
accept/decline/quit: accept

#询问你想要开始安装么?填y开始
You are attempting to install on an unsupported configuration. Do you wish to continue?
(y)es/(n)o [ default is no ]: y

#询问你是否想要安装显卡驱动?填n不安装,否则出现两个驱动就会出启动问题
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
(y)es/(n)o/(q)uit: n

#是否安装CUDA9.0工具集
Install the CUDA 9.0 Toolkit?
(y)es/(n)o/(q)uit: y

#选择一个安装路径,默认直接敲回车即可
Enter Toolkit Location
 [ default is /usr/local/cuda-9.0 ]: 

#你想要进行连接么?填y
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y

#是否安装案例?填y,这将是我们验证我们是否安装成功的重要依据
Install the CUDA 9.0 Samples?
(y)es/(n)o/(q)uit: y

#选择一个案例的位置?这里我进行了自定义,可以默认直接回车
Enter CUDA Samples Location
 [ default is /home/wbj ]: /home/wbj/PersionFile/Code/

Installing the CUDA Toolkit in /usr/local/cuda-9.0 ...

#等待就可以了

接着我们需要添加环境变量

sudo vim ~/.bashrc

在末尾处添加如下内容:

#cuda path --- install CUDA 9.0 ---
export PATH="/usr/local/cuda/bin/:$PATH"
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

export CUDA_HOME=/usr/local/cuda

保存退出别忘了激活环境:

source ~/.bashrc

别忘了输入nvcc -V进行测试

nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Sep__1_21:08:03_CDT_2017
Cuda compilation tools, release 9.0, V9.0.176

出现如下字样,说明大功告成!


1 条评论

安装CUDNN – 木十的博客 · 2019年7月10日 上午10:27

[…] 卸载旧的cuda安装新的cuda【CUDA降级】 […]

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注