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)無法關閉圖顯:

以前用16.04關閉和開啓圖顯都是用的: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

重啓以後就直接到文字界面了,而且也跳不回圖形界面

[打開圖顯:設置系統啓動後默認進入圖形用戶界面]

systemctl set-default graphical.target
reboot

[打開圖顯:只進入圖形用戶界面一次,重啓後仍然是文字界面]

sudo systemctl start lightdm

(2)安裝的時候說沒有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++

(3)安裝make:

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

sudo apt-get install make

(4)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

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章