在麒麟v10Server下重新编译opencv4.10.0的aarch64版本

编译opencv4.10.0

  1. 首先安装依赖环境
sudo yum groupinstall "Development Tools" -y
sudo yum install cmake git gcc gcc-c++ python3 python3-devel -y
sudo yum install gtk2-devel libpng-devel libjpeg-devel libtiff-devel zlib-devel -y
sudo yum install eigen3-devel tbb-devel -y
sudo yum install ffmpeg-devel -y  # 可选:视频编解码支持
sudo yum install java-1.8.0-openjdk-devel -y  # 可选:Java支持

2,下载opencv4.10.0的源代码

wget -O opencv-4.10.0.tar.gz https://github.com/opencv/opencv/archive/4.10.0.tar.gz
wget -O opencv_contrib-4.10.0.tar.gz https://github.com/opencv/opencv_contrib/archive/4.10.0.tar.gz
tar -xzvf opencv-4.10.0.tar.gz
tar -xzvf opencv_contrib-4.10.0.tar.gz
  1. 配置CMake
    先进入目录,创建build目录
cd opencv-4.10.0
mkdir build && cd build
cmake .. \
  -D CMAKE_BUILD_TYPE=RELEASE \
  -D CMAKE_INSTALL_PREFIX=/root/opencv/opencv-4.10.0/install \
  -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.10.0/modules \
  -D BUILD_opencv_python3=ON \
  -D PYTHON3_EXECUTABLE=$(which python3) \
  -D PYTHON3_INCLUDE_DIR=$(python3 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \
  -D PYTHON3_NUMPY_INCLUDE_DIRS=$(python3 -c "import numpy; print(numpy.get_include())") \
  -D WITH_FFMPEG=OFF \
  -D BUILD_TESTS=OFF \
  -D BUILD_PERF_TESTS=OFF

若需禁用Java支持,添加 -D BUILD_opencv_java=OFF
若FFmpeg不可用,添加 -D WITH_FFMPEG=OFF

  1. 编译与安装
make -j$(nproc)  # 使用所有CPU核心加速编译
sudo make install

5.打包

# 安装完成后,OpenCV将被安装到 opencv/opencv-4.10.0/install 目录下
# 将其打包成 libopencv-4.10.0-Linux-aarch64.zip
mv install opencv-4.10.0
zip -r libopencv-4.10.0-Linux-aarch64.zip opencv-4.10.0

如果想使用opencv_java4.10.0.so文件,可以到build/lib里查找。

更多推荐