第一个OpenCV安装
opencv 源码下载链接
下载 OpenCV4.1.1.zip 并解压,执行
cd opencv-4.1.1
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j8
sudo make install
注意点:
- make -j8 是8线程make,速度快,可以不写。默认1;
- cmake 后面的 CMAKE_BUILD_TYPE=Release,设置release方式, 比debug方式快;
CMAKE_INSTALL_PREFIX=/usr/local
设置 安装路径; 这里也是默认安装 路径; 若想安装多版本的,第二个 opencv路径需要修改;否则会覆盖之前安装的,后面介绍。- 有的报错
//usr/lib/libvtkIO.so.5.10:对‘_TIFFmalloc@LIBTIFF_4.0’未定义的引用
,则在cmake编译opencv时候加参数编译-D BUILD_TIFF=ON
, 把 tiff 也编译进去。
现在安装完成了,需要设置环境变量了。
(1)配置 lib 路径
sudo gedit /etc/ld.so.conf.d/opencv.conf
# 在文件末尾添加下面语句
/usr/local/lib
# 执行生效
sudo ldconfig
(2)配置 PKG_CONFIG_PATH
sudo gedit ~/.zshrc
# 在文件末尾添加写入, 注意路径修改
export PATH="/home/ubuntu/opencv-4.1.1/build/bin:$PATH"
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
# 执行更新
source ~/.zshrc
sudo updatedb
好了,安装完毕, pkg-config --modversion opencv
可以查看当前系统 opencv版本。有时候会出现以下错误,Package opencv was not found in the pkg-config search path. 是缺失了 opencv.pc 这个配置信息文件. 这是解决 方案
第二个OpenCV 安装
和 opencv 安装几乎一样, 唯一需要注意的点就是, 安装 默认路径的 改变 。下面 以安装 opencv3.4 为例。
cd opencv-3.4.3
mkdir build
cd build
# 注意 这里把路径改成了 /usr/local/include/opencv3.4.3
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/include/opencv3.4.3 ..
make -j8
sudo make install
修改 lib
sudo gedit /etc/ld.so.conf.d/opencv.conf
# 在文件末尾添加下面语句
/usr/local/include/opencv3.4.3/lib
# 执行生效
sudo ldconfig
配置环境
export PATH="/home/ubuntu/Downloads/opencv-3.4.3/build/bin:$PATH"
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/include/opencv3.4.3/lib/pkgconfig
export LD_LIBRARY_PATH="/usr/local/include/opencv3.4.3/lib:$LD_LIBRARY_PATH"
# 执行更新
source ~/.zshrc
sudo updatedb
OpenCV 版本切换
切换 就是 在 ~/.zshrc 中
选择 注释掉其中一个版本的环境变量; 然后激活一下。就可以了。
用哪个 就把哪一个 环境变量 PKG_CONFIG_PATH
, LD_LIBRARY_PATH
打开;