(编译并不需要opencv环境支持,pc端没有opencv环境也可编译)
1、下载opencv4.6.0并解压
(1)、下载
(2)、解压
unzip opencv-4.6.0
cd opencv-4.6.0
2、安装基础工具
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
(报错:无法定位软件包libjasper-dev的解决办法,执行下面代码处理)
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt upgrade
sudo apt install libjasper1 libjasper-dev
3、编写编译脚本
mkdir build
mkdir output
cd build
vi build.sh
#!/bin/bash
set -e # Exit immediately if a command exits with a non-zero status.
ToolChain=/opt/hisi-linux/x86-arm/arm-himix200-linux
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D BUILD_SHARED_LIBS=ON \
-D CMAKE_FIND_ROOT_PATH=${ToolChain}/ \
-D CMAKE_TOOLCHAIN_FILE=../platforms/linux/arm-gnueabi.toolchain.cmake \
-D CMAKE_C_COMPILER=${ToolChain}/bin/arm-himix200-linux-gcc \
-D CMAKE_CXX_COMPILER=${ToolChain}/bin/arm-himix200-linux-g++ \
-D CMAKE_C_FLAGS="-mfloat-abi=softfp -mfpu=neon" \
-D CMAKE_CXX_FLAGS="-mfloat-abi=softfp -mfpu=neon" \
-D CMAKE_INSTALL_PREFIX=../output \
-D WITH_TBB=ON \
-D WITH_EIGEN=ON \
-D BUILD_ZLIB=ON \
-D BUILD_TIFF=ON \
-D BUILD_JASPER=ON \
-D BUILD_JPEG=ON \
-D BUILD_PNG=ON \
-D ENABLE_NEON=ON \
-D ENABLE_VFPV3=ON \
-D WITH_LIBV4L=ON \
-D BUILD_opencv_python=OFF \
-D ENABLE_PRECOMPILED_HEADERS=OFF \
-D BUILD_EXAMPLES=OFF \
-D BUILD_TESTS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D BUILD_WITH_DEBUG_INFO=OFF \
-D BUILD_DOCS=OFF \
-D WITH_OPENCL=OFF \
-D WITH_1394=OFF \
-D BUILD_opencv_world=ON \
..
make -j8$(nproc)
4、运行脚本,编译opencv
sh build.sh
5、移植编译出来的opencv动态库到开发板
(1)、复制当前目录下lib里面的libopencv_world.so.4.6.0、libopencv_world.so、libopencv_world.so.406到开发板/user/lib目录
(2)、设置环境变量export LD_LIBRARY_PATH=/user/lib:$LD_LIBRARY_PATH
到此,移植成功