Ubuntu16.04 cuda9.0 opencv3.3.0 卸载并重新安装
1、卸载
进入有安装路径配置文件install_manifest.txt(是关于opencv配置的路径)的目录,即opencv的安装目录,一般都在主文件夹里。
参考:https://blog.csdn.net/qiaoji6073/article/details/76572801
2、重新安装
1)下载源码,zip包或者tar.gz包
源码下载地址:https://github.com/opencv/opencv/releases/tag/3.3.0
2)安装教程
官方文档教程:https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
3)安装遇到的问题
每个人电脑的配置环境不同,因而在安装过程中官方教程也不一定完全适用,会有一些小问题。遇到问题解决问题。
问题1:
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
//usr/lib/libvtkIO.so.5.10:对‘[email protected]_4.0’未定义的引用
collect2: error: ld returned 1 exit status
modules/viz/CMakeFiles/opencv_test_viz.dir/build.make:234: recipe for target 'bin/opencv_test_viz' failed
make[2]: *** [bin/opencv_test_viz] Error 1
CMakeFiles/Makefile2:6104: recipe for target 'modules/viz/CMakeFiles/opencv_test_viz.dir/all' failed
make[1]: *** [modules/viz/CMakeFiles/opencv_test_viz.dir/all] Error 2
解决办法:在cmake编译opencv时候加参数编译-DBUILD_TIFF=ON
问题2:
nvcc fatal: Unsupported gpu architecture 'computer_20'
这通常是由于cuda版本和opencv版本不适配导致的。
解决办法:
1、打开opencv-3.3.0/cmake/OpenCVDetectCUDA.cmake文件,根据cuda版本的计算能力,选择CUDA_GENERATION的参数:Fermi/Kepler/Maxwell/Pascal
eg: CUDA9.0—— 在cmake编译opencv时候加参数编译-D CUDA_GENERATION=Pascal
2、找到opencv3.3.0\modules\cudev\include\opencv2\cudev\common.hpp
在common.hpp中添加cuda_fp16.h
#include <cuda_fp16.h>
参考:https://blog.csdn.net/u014613745/article/details/78310916