Ubuntu18.04+NVIDIA 440显卡驱动+cuda10.0 安装踩坑指南

一、ubuntu18.04

 

因为GBILC2.7只适配Ubuntu18.04,原来的16.04带不动,所以要升级下系统~最好不要直接用系统的自动update,出来多多少少有问题。。。后面在官网下了.iso文件,用rufus制作了一个启动盘,过程非常简单,有可能会说有包下载不了,去csdn上找有对应的包,放在.exe同一个文件夹下就可以使用啦!

在ubuntu重装时,如果不是大神建议选第二项erase模式擦除数据库重装,选第一个的话可能会放在其他盘里(例如你的数据盘。。。而不是系统盘)里存在多系统

二、Driver 440

安装过程其实非常熟悉,但不知道是不是18.04的原因还是我前面包没装全,在sudo sh NVIDIA-Linux-x86_64-440.82.run的时候,发现很多error,一个一个来解决8~

(1)在Terminal种输入:

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

在文档输入:

blacklist nouveau
options nouveau modeset=0

(2)更新文件后重启:

sudo update-initramfs -u
reboot

(3)查看是否无输出:

lsmod | grep nouveau

(4)关闭图显:

以前用16.04关闭和开启图显X-service都是用的:sudo lightdm stop与sudo lightdm start,此时会提示:

failed to stop lightdm.service: unit lightdm.service not loaded 

lightdm: command not found

等等错误

貌似在18.04是不这么关闭的,不用这个语句?(不要去做什么sudo apt install lightdm),用此种方式:

[关闭图显]

sudo systemctl set-default multi-user.target
reboot

重启以后就直接到文字界面了,而且也跳不回图形界面

(5)进行显卡驱动安装

sudo sh NVIDIA-Linux-x86_64-440.80.run

(6)[打开图显:设置系统启动后默认进入图形用户界面]

sudo systemctl set-default graphical.target
reboot

[打开图显:只进入图形用户界面一次,重启后仍然是文字界面]

sudo systemctl start lightdm

 

其他报错解决方案~

[1] 安装的时候说没有cc:

(此外:The gcc compiler is required for development using the CUDA Toolkit.后面也需要)

先检查一下有没有gcc,没有的话就安装:

gcc --version
sudo apt-get install gcc
sudo apt-get install g++

[2] 安装make:

sudo apt-get update
sudo apt-get install ubuntu-make

sudo apt-get install make

[3] You do not appear to have libc header files installed on your system.  

执行:

sudo apt-get install build-essential

三:CUDA10.0

注意一点是因为上一步已经安装驱动了,所以第一句询问:nvidia accelerated graphic driver就要选no

(1)安装时出现提示错误:

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

安装依赖库:

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev \
    libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

但我发现我再次运行还是会报:

Missing recommended library: libGL.so

参考了此文档https://www.wandouip.com/t5i154301/

首先检查一下自己是不是真的没有这个库:

sudo find / -name 'libGL*'

发现存在/usr/lib/libGL.so.1,加上一个软链接:

sudo ln -s /usr/lib/libGL.so.1 /usr/bin/libGL.so

但。。。我再次安装还是报这个。。。我解决不下去了就想着试一下测试,此时nvcc -V是没有结果的。

紧接着在 .bashrc 中添加环境变量:

sudo gedit ~/.bashrc
我最终使用的语句:
export CUDA_10_0_HOME=/usr/local/cuda-10.0
export PATH=$PATH:/usr/local/cuda/bin 
export LD_LIBRARY_PATH=CUDA_10_0_HOME/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}



参考一:
$ export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
$ export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

# 在ubuntu18.04 上,上述直接设置LD_LIBRARY_PATH 对一些第三方库的编译安装貌似不起作用,会找不到库
# 推荐使用以下设置
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:/usr/local/cuda/bin
# 另外cuda库要在/etc/ld.so.conf.d/cuda.conf 中设置,内容为:/usr/local/cuda/lib64
# 设置完在命令行输入sudo ldconfig 使其生效
参考二:
最开始直接使用的参考二,但是第二句好像不起作用,输入“nvcc --verision”是没有,于是改成了我最终使用的语句样子
# for CUDA 10.0
export CUDA_10_0_HOME=/usr/local/cuda-10.0
export PATH=$PATH:$CUDA_10_0_HOME/bin 
export LD_LIBRARY_PATH=CUDA_10_0_HOME/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

关闭gedit,在终端中运行如下命令,使环境变量立即生效:

source ~/.bashrc

查看cuda版本(这个时候就出来cuda compilation tools,release 10.0, V10.0.130):

nvcc --version

再检查一下,执行3条语句:

cd /usr/local/cuda/samples/1_Utilities/deviceQuery 
sudo make
./deviceQuery

最终如果是出现,是PASS则代表安装成功:

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 10.2, CUDA Runtime Version = 10.0, NumDevs = 1
Result = PASS

如果要卸载cuda:

$ sudo /usr/local/cuda-xx/bin/uninstall_cuda_xx.pl

四、cudnn

版本型号对应问题:https://blog.csdn.net/qq_35941018/article/details/96481116?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

下载并解压 cudnn

tar  -zxvf    cudnn-10.2-linux-x64-v7.6.5.32.tgz

sudo cp cuda/include/cudnn.h /usr/local/cuda/include/ 
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ 
sudo chmod a+r /usr/local/cuda/include/cudnn.h 
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

在终端查看CUDNN版本:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

参考:https://blog.csdn.net/ithinking110/article/details/105144202/?ops_request_misc=&request_id=&biz_id=102&utm_term=cudnn%E5%AE%89%E8%A3%85%20ubuntu18%20cuda10&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-105144202

五、pycharm

报错:pycharm ModuleNotFoundError: No module named 'distutils.core'

ubuntu18.04 默认没有安装 pip ,需要安装 python3-pip,即可解决

sudo apt-get install python3-pip

 

你可能感兴趣的:(ubuntu,Linux)