ubuntu22.04@laptop OpenCV定制化安装
- [1. 源由](#1. 源由)
- [2. 默认配置](#2. 默认配置)
- [3. 定制配置](#3. 定制配置)
- [4. 定制安装](#4. 定制安装)
- [5. 定制OpenCV-4.9.0](#5. 定制OpenCV-4.9.0)
-
- [5.1 修改opencv.conf](#5.1 修改opencv.conf)
- [5.2 加载so文件](#5.2 加载so文件)
- [5.3 修改bash环境变量](#5.3 修改bash环境变量)
- [5.4 增加pkgconfig](#5.4 增加pkgconfig)
- [5.5 检查OpenCV-4.9.0安装](#5.5 检查OpenCV-4.9.0安装)
- [6. 总结](#6. 总结)
- [7. 参考资料](#7. 参考资料)
1. 源由
目前,能Google到的代码层次不齐,且OpenCV库本身就在不断迭代更新。
因此,在实际使用过程涉及到版本之间的差异,同样环境不同OpenCV版本的对比验证就显得尤为重要。
本章节就将针对这个特殊的需求进行整理,供需要使用的朋友进行参考。
2. 默认配置
通常通过apt
工具安装deb文件,都是安装在默认位置。
/usr/local/lib
so文件位置/usr/local/include
h头文件位置
3. 定制配置
定制化的安装流程,需要在编译的时候指定安装文件临时存放的位置。
注:这里引用了一些宏定义,后续github脚本版本中提供。
-D CMAKE_INSTALL_PREFIX=$SNAPDRAGONFLY_CURRENT_DIR_PATH/installation/opencv-"$cvVersion" \
比如:期望安装路径为:/opt/opencv-4.9.0
-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0 \
4. 定制安装
整个代码编译过程详见:ubuntu22.04@laptop OpenCV安装
注:配置时,请增加宏定义符号-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D WITH_TBB=ON \
-D BUILD_TBB=OFF \
-D WITH_V4L=ON \
-D WITH_QT=ON \
-D WITH_OPENGL=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=ON \
-D CMAKE_INSTALL_PREFIX=/opt/opencv-4.9.0 \
-D OPENCV_PYTHON3_INSTALL_PATH=$SNAPDRAGONFLY_CURRENT_DIR_PATH/opencv-$cvVersion-py3/lib/python3.10/site-packages \
-D OPENCV_ENABLE_NONFREE=ON \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
-D PYTHON_EXECUTABLE=../../opencv-$cvVersion-py3/bin/python3 \
-D BUILD_EXAMPLES=ON ..
脚本make install
执行完成后,所有文件将会直接安装到/opt/opencv-4.9.0
。
5. 定制OpenCV-4.9.0
5.1 修改opencv.conf
$ sudo vim /etc/ld.so.conf.d/opencv.conf
$ sudo cat /etc/ld.so.conf.d/opencv.conf
/opt/opencv-4.9.0
$ ls /opt/
opencv-4.9.0
5.2 加载so文件
$ sudo ldconfig
5.3 修改bash环境变量
$ sudo vi /etc/bash.bashrc
$ sudo cat /etc/bash.bashrc |tail -n 2
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
$ source /etc/bash.bashrc
$ echo $PKG_CONFIG_PATH
:/usr/local/lib/pkgconfig
$ sudo mkdir -p /usr/local/lib/pkgconfig
5.4 增加pkgconfig
$ cd /opt/opencv-4.9.0
$ find ./ -name opencv4.pc
./lib/pkgconfig/opencv4.pc
$ sudo cp ./lib/pkgconfig/opencv4.pc /usr/local/lib/pkgconfig
5.5 检查OpenCV-4.9.0安装
$ pkg-config --cflags opencv4
-I/opt/opencv-4.9.0/include/opencv4
6. 总结
安装上述方法,可以安装多个OpenCV环境,比如:
- OpenCV 4.0.0
- OpenCV 4.9.0
仅需要在使用的时候,替换不同版本的opencv4.pc
配置文件即可。