ubuntu22.04@laptop OpenCV定制化安装

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配置文件即可。

7. 参考资料

【1】ubuntu22.04@laptop OpenCV安装

相关推荐
孟祥_成都8 分钟前
【全网最通俗!新手到AI全栈开发必读】 AI 是如何进化到大模型的
前端·人工智能·全栈
牛奶32 分钟前
AI辅助开发的基础概念
前端·人工智能·ai编程
东坡肘子33 分钟前
OpenClaw 不错,但我好像没有那么需要 -- 肘子的 Swift 周报 #125
人工智能·swiftui·swift
风象南8 小时前
普通人用AI加持赚到的第一个100块
人工智能·后端
牛奶9 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶9 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
罗西的思考11 小时前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab12 小时前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab12 小时前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
格砸14 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端