opencv ubuntu源码编译
时间: 2025-01-07 18:08:14 浏览: 6
### 编译环境准备
为了在Ubuntu系统上从源码编译OpenCV,需先准备好必要的开发工具和依赖项。这包括但不限于CMake、Git以及一些图像处理库等[^2]。
```bash
sudo apt update && sudo apt upgrade -y
sudo apt install build-essential cmake git pkg-config libgtk-3-dev \
libavcodec-dev libavformat-dev libswscale-dev python3-dev python3-numpy \
libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev \
libopenblas-dev liblapack-dev gfortran protobuf-compiler libgoogle-glog-dev \
libgflags-dev libeigen3-dev libatlas-base-dev libboost-all-dev \
libvtk7-dev libqt5webkit5-dev libqt5opengl5-dev qtmultimedia5-dev \
libfaac-dev libmp3lame-dev libtheora-dev libvorbis-dev libxvidcore-dev \
x264 v4l-utils yasm ffmpeg qtbase5-dev libprotobuf-dev \
libhdf5-dev openexr libgdal-dev -y
```
### 下载OpenCV源码
前往官方发布的页面获取所需版本的OpenCV压缩包,并解压到本地目录下[^1]。对于特定需求如额外模块的支持,则还需同时下载`opencv_contrib`仓库中的对应分支代码。
```bash
cd ~
wget -O opencv.zip https://github.com/opencv/opencv/archive/refs/tags/4.10.0.zip
unzip opencv.zip
mv opencv-4.10.0 opencv
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/refs/tags/4.10.0.zip
unzip opencv_contrib.zip
mv opencv_contrib-4.10.0 opencv_contrib
rm *.zip
```
### 配置与构建项目
创建一个新的文件夹用于存放编译过程中产生的临时文件,随后通过命令行调用CMake来配置项目的具体参数设置,比如指定安装位置或是开启某些特性开关等操作[^5]。
```bash
mkdir ~/opencv/build && cd ~/opencv/build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
-D BUILD_EXAMPLES=ON ..
make -j$(nproc)
```
### 安装软件包
完成上述过程之后就可以执行最终一步——将编译好的二进制文件复制至系统的标准路径下了。如果希望保留当前已有的旧版程序不受影响的话,建议修改默认的目标前缀为其他自定义的位置再做部署安排。
```bash
sudo make install
sudo ldconfig
```
阅读全文