opencv3.4 ffmpeg3.4 arm-linux 交叉编译

打印 上一主题 下一主题

主题 1032|帖子 1032|积分 3096

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一些依靠安装:
sudo apt-get install pkg-config  libgtk2.0-dev  libavcodec-dev libavformat-dev libswscale-dev
交叉编译工具链准备:gcc-linaro-6.3.1
1、下载 https://github.com/FFmpeg/FFmpeg
解压后新建目录:Fmpeg-n3.4.13/ffmpeg_install
终端执行:
./configure --prefix=../FFmpeg-n3.4.13/ffmpeg_install --enable-gpl --enable-cross-compile --arch=arm64 --disable-stripping --target-os=linux --cc=../gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc --enable-shared --enable-static
make -j4
make install
2、
设置pkg-config
如果没安装pkg-config,请自行百度安装以下。
1.进入ffmpeg_instal的lib目录下的pkgconfig文件夹,拷贝pkgconfig路径
设置pkg-config变量PKG_CONFIG_PATH
export PKG_CONFIG_PATH=/home/zeng/FFmpeg/my_install/lib/pkgconfig
测试pkg-config设置是否正确:
执行: pkg-config --cflags libavformat
输出:-I/home/zeng/FFmpeg/my_install/include
3、下载opencv
https://github.com/opencv/opencv.git
新建opencv/build 文件夹
cd build
执行:
cmake -D CMAKE_BUILD_TYPE=RELEASE  \
             -D CMAKE_INSTALL_PREFIX=../opencv-3.4/build \
             -D CMAKE_C_COMPILER=../gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \
             -D CMAKE_CXX_COMPILER=../gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ \
             -D BUILD_SHARED_LIBS=ON \
             -D CMAKE_CXX_FLAGS=-fPIC \
             -D CMAKE_C_FLAGS=-fPIC \
             -D CMAKE_EXE_LINKER_FLAGS=-lpthread -ldl \
             -D ENABLE_PIC=ON \
             -D WITH_1394=OFF \
             -D WITH_ARAVIS=OFF \
             -D WITH_ARITH_DEC=ON \
             -D WITH_ARITH_ENC=ON \
             -D WITH_CLP=OFF \
             -D WITH_CUBLAS=OFF \
             -D WITH_CUDA=OFF \
             -D WITH_CUFFT=OFF \
             -D WITH_FFMPEG=ON \
             -D FFMPEG_INCLUDE_DIR=../FFmpeg-n3.4.13/ffmpeg_install/include \
             -D FFMPEG_LIB_DIR=../FFmpeg-n3.4.13/ffmpeg_install/lib \
             -D WITH_GSTREAMER=ON \
             -D WITH_GSTREAMER_0_10=OFF \
             -D WITH_HALIDE=OFF \
             -D WITH_HPX=OFF \
             -D WITH_IMGCODEC_HDR=ON \
             -D WITH_IMGCODEC_PXM=ON \
             -D WITH_IMGCODEC_SUNRASTER=ON \
             -D WITH_INF_ENGINE=OFF \
             -D WITH_IPP=OFF \
             -D WITH_ITT=OFF \
             -D WITH_JASPER=ON \
             -D WITH_JPEG=ON \
             -D WITH_LAPACK=ON \
             -D WITH_LIBREALSENSE=OFF \
             -D WITH_NVCUVID=OFF \
             -D WITH_OPENCL=OFF \
             -D WITH_OPENCLAMDBLAS=OFF \
             -D WITH_OPENCLAMDFFT=OFF \
             -D WITH_OPENCL_SVM=OFF \
             -D WITH_OPENEXR=OFF \
             -D WITH_OPENGL=OFF \
             -D WITH_OPENMP=OFF \
             -D WITH_OPENNNI=OFF \
             -D WITH_OPENNNI2=OFF \
             -D WITH_OPENVX=OFF \
             -D WITH_PNG=OFF \
             -D WITH_PROTOBUF=OFF \
             -D WITH_PTHREADS_PF=ON \
             -D WITH_PVAPI=OFF \
             -D WITH_QT=OFF \
             -D WITH_QUIRC=OFF \
             -D WITH_TBB=OFF \
             -D WITH_TIFF=ON \
             -D WITH_VULKAN=OFF \
             -D WITH_WEBP=ON \
             -D WITH_XIMEA=OFF \
             -D BUILD_opencv_highgui=OFF \
             ..
make -j4
make install
注意这几个设置:
-D BUILD_SHARED_LIBS=OFF  生成静态库,ON即可生成动态so库
以下几个是设置FFMPEG:
-D WITH_FFMPEG=ON \
 -D FFMPEG_INCLUDE_DIR=../FFmpeg-n3.4.13/ffmpeg_install/include \
 -D FFMPEG_LIB_DIR=../FFmpeg-n3.4.13/ffmpeg_install/lib \
以下是编译器设置路径以及编译生成目录路径设置:
 -D CMAKE_INSTALL_PREFIX=../opencv-3.4/build \
             -D CMAKE_C_COMPILER=../gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \
             -D CMAKE_CXX_COMPILER=../gcc-linaro-6.3.1-2017.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ \

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

慢吞云雾缓吐愁

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表