【OpenCV】使用CMake链接自己路径下面的OpenCV库

版权声明:转载请注明出处 http://blog.csdn.net/TwT520Ly https://blog.csdn.net/TwT520Ly/article/details/81981473

\qquad 在实际开发中,不一定会拥有sudo权限,所以需要将OpenCV编译在非环境路径下面。之前将OpenCV配置在系统路径下面的时候,在CMake中我们是使用find_package进行查找的,使用CMake链接函数库,无非就是对头文件和动态(静态)链接的引用,只要find_package找到的函数库,就可以直接使用XXX_LIBRARIESXXX_INCLUDE_DIRSA进行处理。
\qquad 对于CMake而言,本身没有搜索库的功能,但是库的提供者可以通过提供相关CMake代码去实现该功能(如FindXXX.cmake或者是XXXConfig.cmake )。上述两个文件都是库作者提供的,因此只需要让你的CMakeLists中找到该这两个文件就可以了。find_package采用两种模式去搜索库:
Module模式(默认方式)
搜索CMAKE_MODULE_PATH指定路径下面的FindXXX.cmake文件,在文件中定义了XXX_INCLUDE_DIRSXXX_LIBRARIES变量的值。
Config模式
搜索XXX_DIR指定路径下面的XXXConfig.cmake文件,在文件中定义了XXX_INCLUDE_DIRSXXX_LIBRARIES变量的值。

###关于OpenCV的配置###

set(CMAKE_PREFIX_PATH "/home/User/opencv/install/share/OpenCV")
//set(OpenCV_DIR /home/User/opencv/build/)
find_package(OpenCV REQUIRED)
include_directories(${OPENCV_INCLUDE_DIRS})
target_link_libraries(MAIN ${OpenCV_LIBS})

猜你喜欢

转载自blog.csdn.net/TwT520Ly/article/details/81981473