参考博客:http://blog.youkuaiyun.com/hansry/article/details/75309906
运行VINS的时候时候安装过ROS,自带有opencv2.4.8。后来学习高博的SLAM14讲又装了3.1.0,后来跑VINS又装了一遍2.4.8。
反复折腾太傻了,找了些资料,学了下怎么安装两个版本并存在电脑上, 以及怎么调用。
安装:
pkg-config --modversion opencv
cmake -D CMAKE_BUILD_TYPE=RELEASE -D WITH_TBB=ON -D WITH_V4L=ON -D CMAKE_INSTALL_PREFIX=/usr/local/opencv310 ..
/usr/local/opencv310
然后依然是
make -j2
sudo make install
安装结束就可以在/usr/local/目录下看到opencv310这个文件夹了使用:
# OpenCV 3.1.0
set( OpenCV_DIR /usr/local/opencv310/share/OpenCV )
find_package( OpenCV 3.1 REQUIRED )
include_directories( SYSTEM ${OpenCV_INCLUDE_DIRS} /usr/local/opencv310/include )
find_package( "usr/local/opencv310/include/opencv2" )
这样就可以调用opencv的3.1.0版本了。
#OpenCV 2.4.8
find_package( OpenCV REQUIRED )
写在研究了CMake的find_package命令之后
实际上只需在find_package命令里指定版本号,如果找到了对应的版本,就会自动定义好一些变量供我们在CMakeLists.txt里直接使用,比如下面的OpenCV_INCLUDE_DIRS和OpenCV_LIBRARIES。所以使用起来像下面这样:
find_package( OpenCV 3.1 REQUIRED)
include_directories( SYSTEM ${OpenCV_INCLUDE_DIRS})
target_link_libraries(target_name ${OpenCV_LIBRARIES}
2661



被折叠的 条评论
为什么被折叠?



