背景:
假如ubuntu系统中之前已经安装好2.4.13版本的opencv,但是项目需要使用4.1版本的opencv,在不影响已经安装的opencv版本的前提下,按照如下方法设定环境变量,即可解决两个版本在同一个系统中共存的问题。
4.1版本的opencv源码编译后,安装在~/work/github/opencv-4.1/release目录,避免安装到默认路径,造成多版本混乱:
目录结构如下:
1 | release |
指定头文件路径:
1 | $export CPLUS_INCLUDE_PATH=~/work/github/opencv-4.1/release/include/opencv4/:$CPLUS_INCLUDE_PATH |
指定查找头文件的路径
指定CMake库路径:
1 | $export PKG_CONFIG_PATH=/home/chengwei/work/github/opencv-4.1/release/lib/pkgconfig:$PKG_CONFIG_PATH |
cmake通过find_package( )才能找到相应的库
指定编译链接库路径:
1 | $export LIBRARY_PATH=/home/chengwei/work/github/opencv-4.1/release/lib:$LIBRARY_PATH |
此处要注意LIBRARY_PATH和LD_LIBRARY_PATH环境变量的区别,前者用于编译,后者用于运行时链接
指定运行链接库路径:
1 | $export LD_LIBRARY_PATH=/home/chengwei/work/github/opencv-4.1/release/lib:$LD_LIBRARY_PATH |
通过设定上述环境变量,即可让项目在编译和链接时,使用4.1版本的opencv头文件和动态库