之前安装opencv3.4.1的时候是按照这个大佬的博文装的,由于需要在2080显卡上运行程序,修改为CUDA10之后,opencv也需要
更换,其中与opencv3.4.1的安装有一些不同。
只写不同的地方。
5.安装完cmake之后执行命令 ,创建编译文件夹,不创建的会出现像大佬博客中的提示。
In-source builds are not allowed.
应该先新建一个编译文件夹
mkdir my_build_dir
cd my_build_dir
这里需要注意的是,没有新建一个编译文件夹就进行cmake 后,再新建编译文件夹my_build_dir会产生错误。
这是因为直接cmake会在根目录下产生一个CMakeCache.txt文件,将这个文件删除后,再进行第六步就可以了。
6.cmake一下,因为opencv4默认不产生pkgconfig文件的,所以设置一下。
还有就是注意这里的 CMAKE_INSTALL_PREFIX=/usr/local/opencv4 我的是在usr/local/下的opencv4文件夹下
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/opencv4 -D OPENCV_GENERATE_PKGCONFIG=ON ..
7.sudo make
11.配置bash
sudo gedit /etc/bash.bashrc
在最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv4/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/opencv4/lib
export PKG_CONFIG_PATH
保存,执行如下命令使得配置生效
source /etc/bash.bashrc
更新
sudo updatedb
其他都是按照大佬的博文安装就没有什么问题了。
执行pkg-config --modversion opencv查看opencv版本的时候可能会出现问题,需要确保
1.第六步的时候设置了OPENCV_GENERATE_PKGCONFIG=ON
2.上面的PKG_CONFIG_PATH的变量的值 /usr/local/opencv4lib/pkgconfig的路径下有opencv.pc文件。若是opencv4.pc,则将该文件名修改为opencv.pc
执行命令sudo cp opencv4.pc opencv.pc
就可以了
CLion中的CMakeLists中,若存在多版本Opencv并且项目中使用本地Opencv的时候,最好指出使用的是哪个版本的opencv。
cmake_minimum_required(VERSION 3.10)
project(test_cprimer)
set(CMAKE_CXX_STANDARD 11)
find_package(OpenCV 4.0.0 REQUIRED)
add_executable(test_cprimer main.cpp main.h Exercise.cpp Exercise.h)
target_link_libraries(test_cprimer ${OpenCV_LIBS})