CMake find_package 多个版本
一般情况Cmake的find_package会去默认的路径搜索指定的包
例如:
find_package(OpenCV 2.3 REQUIRED)
Cmake会去/usr/share/目录下查找OpenCVConfig.cmake文件
但时候装了多个Opencv的包,那么应用程序编译时就需要指定具体包的安装路径.
1: 设置CMake的find_package搜索路径
set CMAKE_PREFIX_PATH " include cmake"
比如: 自己用源码安装的openCV路径为:
/home/opencv_INSTALL/
bin
include
lib
share/OpenCV-OpenCVConfig.cmake
那么在CmakeList设置为:set( CMAKE_PREFIX_PATH "/home/opencv_INSTALL/share") 既可.
2: 新增头文件和库文件路径
set(PCL_INCLUDE_DIRS "/you inc dir")
include_directories(${PCL_INCLUDE_DIRS})
set(PCL_LIBRARY_DIRS "/you lib dir")
link_directories(${PCL_LIBRARY_DIRS})
3: 增加链接库,比如libpcap.so
target_link_libraries (cloud_viewer ${PCL_LIBRARIES} pcap)