CUDA錯誤刪除


CUDA、CUDNN安裝的心酸史


作者:elfin  資料來源: 文內



1、簡訴

​ 基於ubuntu18.04,Driver Version 440.33.01;cuda10.2、cudnn8.0.3、GPU:1650的基礎環境安裝TensorRT7.2.2.3,安裝好之后,在使用過程中報錯,而項目在2080TI的另一環境中測試通過,通過代碼調試、錯誤定位,最后定位到libcublas有毛病,當時年輕,不懂時,查看cuda版本與Driver Version的對應情況,沒有什么問題,Driver Version滿足>=440.33.01,一般使用它不會報錯;另一方面TensorRT較新,網上有出現這種情況,且有將TensorRT7.2轉換為TensorRT7.1解決的!

​ 在這種背景下,我准備卸載TensorRT7.2.2.3,基於NVIDIA官網卸載命令,不小心刪除了全家桶!切記不要隨意使用sudo apt-get autoremove。雖然按理說不應該刪除CUDA,但是我就遇到這么秀,看見cuda被刪除,直接傻眼。

​ 既然被刪除了那就安裝吧……

​ 首先選擇DEB安裝,結果網絡波動太大,導致安裝的cuda沒有include文件夾,這我找誰去說理啊!那就刪除重安吧,結果這個直接刪CUDA文件夾的騷操作害苦了我,后面不管是DEB還是RUN文件都不能安裝,下面是解決問題的過程記錄!

Top -- Bottom


2、ERROR

安裝報錯如下:

安裝cuda10.2時顯示/tmp/apt-dpkg-install-eBJpT5/25-libcublas-dev_10.2.2.89-1_amd64.deb沒有安裝,所以手動安裝,報錯為:

dpkg: 錯誤: 無法訪問歸檔 '/tmp/apt-dpkg-install-eBJpT5/25-libcublas-dev_10.2.2.89-1_amd64.deb': 沒有那個文件或目錄

cuda 已經是最新版 (10.2.89-1)。
您也許需要運行“apt --fix-broken install”來修正上面的錯誤。
下列軟件包有未滿足的依賴關系:
 cuda-libraries-dev-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
                           依賴: cuda-misc-headers-10-2 (>= 10.2.89) 但是它將不會被安裝
 cuda-nvcc-10-2 : 依賴: cuda-misc-headers-10-2 (>= 10.2.89) 但是它將不會被安裝
 cuda-samples-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
 cuda-visual-tools-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
E: 有未能滿足的依賴關系。請嘗試不指明軟件包的名字來運行“apt --fix-broken install”(也可以指定一個解決辦法)。

此時我的/usr/local下是沒有cuda與cuda-10.2的,這里報錯依賴有問題。在網上找了很多方法,都不行,這里我建議你嘗試以下措施:

  • 缺什么安裝什么

    這個方法我沒有測試,你可以實驗將libcublas-dev這些包安裝一下在安裝cuda。

  • 刪除未被刪除的指令

    這里我首先查詢了我安裝的cuda包:

    $ sudo dpkg -l | grep cuda
    

    在查詢的列表中可以看到很多cuda相關的包,特別是很多版本為10.2.89-1,我選擇將這些10.2.89-1的包全部刪除:

    $ sudo dpkg -P <要刪除的包>
    

    在刪除的過程中,可能會遇到此包被xxx依賴,此時先刪除依賴它的包!直到刪除完全!

    要注意不要誤刪除cuda-drivers等其他版本的包!

    刪除完成之后,即可安裝CUDA10.2!

Top -- Bottom


3、安裝CUDA10.2報錯libcublas為安裝

報錯信息如下:

ubuntu 18.04 Autoware 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝

下列軟件包有未滿足的依賴關系:
 cuda-libraries-dev-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
 cuda-samples-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
 cuda-visual-tools-10-2 : 依賴: libcublas-dev (>= 10.2.2.89) 但是它將不會被安裝
E: 有未能滿足的依賴關系。請嘗試不指明軟件包的名字來運行“apt --fix-broken install”(也可以指定一個解決辦法)。
ERROR: the following rosdeps failed to install
  apt: command [sudo -H apt-get install -y ros-melodic-grid-map-visualization] failed

​ 看到此信息,我首先想到使用apt-get安裝,為了保險,驗證合理性,我百度了一下,還真有遇到此問題的大佬。

​ (報錯信息復制於大佬博客,我的錯誤應該是一樣的!)

​ 基於博客的方法展示步驟如下:

  • 安裝包

    $ sudo apt-get install libculas-dev
    

    報錯:dpkg返回錯誤代碼:

    E: Sub-process /usr/bin/dpkg returned an error code (1)

  • 解決方法(來源於博客)

    $ sudo mv /var/lib/dpkg/info/ /var/lib/dpkg/info_old/
    $ udo mkdir /var/lib/dpkg/info/
    $ sudo apt-get update
    # 下面這一步我報錯了,鏡像源有些沒有get到,可能是網絡的原因,不過不影響后面的操作
    $ sudo apt-get ugrade
    

    再安裝

    $ sudo apt-get install libculas-dev
    

Top -- Bottom


4、CUDA、CUDNN安裝

基於第二章、第三章,使用sudo apt-get -y install cuda成功安裝,沒有包任何奇怪的東西!

使用nvidia-smi測試通過,使用nvcc -V報錯,進入cuda-10.2所在目錄查看,發現沒有cuda軟連接:

$ cd /usr/local/
$ sudo ln -s cuda-10.2/ cuda/

創建軟連接后,nvcc -V命令可以正常使用,下面測試是否正常安裝!

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

正常應該在最后打印Result = PASS
實際我這里是未通過,這很難受了,刪掉重新安裝吧!發現在bin下沒有uninstall相關文件,裂開了!,使用如下命令刪除:

$ sudo apt-get autoremove --purge cuda
$ sudo dpkg -l | grep cuda
# 此命令顯示還有未卸載干凈的,繼續手動卸載!此時發現之前一直向保留的440.33.01那個包早沒了,好吧之前就不該保留!
$ sudo dpkg -P ···

Top -- Bottom


完!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM