前言:本文章结合CSDN多篇文章内容,并根据个人实际情况进行修改
原文链接:
https://blog.csdn.net/lihe4151021/article/details/90237681
https://blog.csdn.net/dulingwen/article/details/90607767
https://blog.csdn.net/weixin_44003563/article/details/90293187
ubuntu-drivers devices
原因:这是Ubuntu默认的开源显卡驱动,与N卡驱动一起使用会导致兼容性 问题,比如卡在登录界面无法进入图形界面。
#终端中运行:
lsmod | grep nouveau
如果有输出则代表nouveau正在加载。需要我们手动禁掉nouveau
#打开文本
sudo gedit /etc/modprobe.d/blacklist.conf
#在打开的最后加上两行:
1.blacklist nouveau
2.options nouveau modeset=0
sudo update-initramfs -u
# 此时可以用
lsmod | grep nouveau
#查看没有输出即下载成功,如果有可重启再次查看
#卸载原有的nvidia驱动
sudo apt-get remove --purge nvidia*
#添加安装源
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
#然后检查可以安装的驱动版本
ubuntu-drivers devices
#选择自己需要的版本(先查看cuda版本对应驱动要求,下面有链接)
sudo apt-get install nvidia-driver-xxx
重启,使用nvidia-smi查询是否安装
在设置 ——>详细信息——>看到显示显卡信息:GeForce GTX 1080 Ti/PCIe/SSE2——>安装成功
注:可以使用ubuntu仓库和手动配置,手动配置比较麻烦(这里不做介绍)
ubuntu配置点击 软件和更新 ==> 附件驱动 然后选择 nvidia驱动
nvidia-smi:
附:
显卡驱动对应版本
驱动下载链接
一、禁用 nouveau驱动(在安装Nvidia驱动时已禁用)
1、终端中运行:
lsmod | grep nouveau
如果有输出则代表nouveau正在加载。需要我们手动禁掉nouveau
2、Ubuntu的nouveau禁用方法:
a、在/etc/modprobe.d中创建文件blacklist-nouveau.conf
输入命令:
sudo vi /etc/modprobe.d/blacklist-nouveau.conf (利用vi编辑器编辑和保存文件)
在文件中输入一下内容:
blacklist nouveau
options nouveau modeset=0
b、执行:
sudo update-initramfs –u
c、再执行:
lsmod | grep nouveau
若无内容输出,则禁用成功,若仍有内容输出,请检查操作,并重复上述操作。
二、CUDA10.0安装
附:CUDA10.0安装
OpenCV4.1.0:
https://github.com/opencv/opencv/releases/tag/4.1.0
OpenCV_contrib 4.1.0: https://github.com/opencv/opencv_contrib/releases/tag/4.1.0
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
里面有些东西诸如cmake、git、python-dec、python-numpy一般早都安装好了,确定的话可以直接去掉。
mkdir build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/home/linzq/opencv-4.1.0/opencv_contrib-4.1.0/modules -D PYTHON_DEFAULT_EXECUTABLE=/usr/bin/python3 -D BUILD_opencv_python3=ON -D PYTHON3_EXCUTABLE=/usr/bin/python3 -D PYTHON3_INCLUDE_DIR=/usr/include/python3.6m -D OPENCV_GENERATE_PKGCONFIG=ON -D WITH_CUDA=1 -D WITH_CUBLAS=1 -D DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" -D WITH_TBB=ON -D WITH_V4L=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0/ -DBUILD_SHARED_LIBS=ON BUILD_opencv_cudacodec=1 ..
OPENCV_EXTRA_MODULES_PATH 根据opencv_contrib-4.1.0文件夹具体路径进行修改,建议将opencv_contrib-4.1.0文件夹拷贝到opencv-4.1.0文件夹下
make -j8
-j8是同时使用8核CPU来执行编译过程,这样速度比较快,具体需要根据自己的电脑情况修改。
sudo make install
然后在/usr/local/lib下可以看到img编译的结果。
sudo make uninstall
sudo rm -r /usr/local/include/opencv4
sudo rm -r /usr/local/include/opencv
sudo rm -r /usr/include/opencv
sudo rm -r /usr/include/opencv4
sudo rm -r /usr/local/share/opencv
sudo rm -r /usr/local/share/OpenCV
sudo rm -r /usr/share/opencv
sudo rm -r /usr/share/OpenCV
sudo rm -r /usr/local/bin/opencv*
sudo rm -r /usr/local/lib/libopencv*
sudo rm -r /usr/local/lib/pkgconfig/opencv4.pc
sudo rm -r /usr/local/lib/cmake/opencv4
经过上面的步骤后,在/usr/local/lib/pkgconfig下生成了opencv4.pc文件,这个文件很重要,里面记录了OpenCV头文件、库文件的路經。需要进行如下配置:
#进入 bash.bashrc
sudo gedit /etc/bash.bashrc
#在文件最后添加如下内容
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
#更新
sudo updatedb
#打开下列文件
sudo gedit /etc/ld.so.conf.d/opencv.conf
*# 添加lib路經*
/usr/local/lib
# 更新*
sudo ldconfig
NOTE:一切有关” cannot open shared object file: No such file or directory “的问题基本都可以通过上面的方式来解决(除非是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对)
pkg-config --modversion opencv4
解决方案:https://blog.csdn.net/chanzhennan/article/details/90451968