欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

i.MX6 交叉编译zlib、yasm、xvidcore、libpng、x264、jpegsrc、ffmpeg

发布时间:2023/12/14 44 豆豆
生活随笔 收集整理的这篇文章主要介绍了 i.MX6 交叉编译zlib、yasm、xvidcore、libpng、x264、jpegsrc、ffmpeg 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

原本不是要交叉编译这些库的,在研究opencv交叉编译的过程当中整的,也顺带记录一下。
交叉编译opencv可以看:imx6交叉编译opencv3.4.1

环境:

  • PC操作系统:Ubuntu 16.04 LTS
  • 编译器:arm-poky-linux-gnueabi-gcc 4.9.1

各个库的下载地址:
zlib-1.2.11
yasm-1.3.0
xvidcore_1.3.2
libpng-1.6.36
x264
jpegsrc.v9c
ffmpeg-4.1

对各个库进行交叉编译:

1、配置imx6交叉编译环境
方法:配置imx6交叉编译环境
2、交叉编译zlib-1.2.11

tar xvf zlib-1.2.11.tar.xz cd zlib-1.2.11/ mkdir build cd build

创建build.sh文件,内容:

../configure --prefix=/home/hrx/build_opencv/opencv_depend/ make make install

执行build.sh文件

3、交叉编译yasm-1.3.0

tar zxvf yasm-1.3.0.tar.gz cd yasm-1.3.0/ mkdir build cd build

创建build.sh文件,内容:

../configure --prefix=/home/hrx/build_opencv/opencv_depend/ --host=arm-poky-linux-gnueabi make make install

执行build.sh文件

4、交叉编译xvidcore_1.3.2

tar zxvf xvidcore_1.3.2.orig.tar.gz cd xvidcore-1.3.2/ mkdir build cd build

创建build.sh文件,内容:

#这里要配置交叉编译出来的yasm库,也就是说要先交叉编译yasm export PREFIX=/home/hrx/build_opencv/opencv_depend/ export LDFLAGS=-L$PREFIX/lib/ export INCLUDES=-I$PREFIX/include/ export INCLUDES=-I$PREFIX/include/libyasm ../configure --prefix=/home/hrx/build_opencv/opencv_depend/xvid --host=arm-poky-linux-gnueabi make make install

执行build.sh文件

5、交叉编译libpng-1.6.36

tar zxvf libpng-1.6.36.tar.gz cd libpng-1.6.36/ mkdir build cd build

创建build.sh文件,内容:

#这里要配置交叉编译出来的zlib库,也就是说要先交叉编译zlib export PREFIX=/home/hrx/build_opencv/opencv_depend/ export LDFLAGS=-L$PREFIX/exe/lib/ export INCLUDES=-I$PREFIX/include/ ../configure --prefix=/home/hrx/build_opencv/opencv_depend/libpng --host=arm-poky-linux-gnueabi --enable-shared --enable-static make make install

执行build.sh文件

6、交叉编译x264_20181220-2245

tar xvf last_x264.tar.bz2 cd x264-snapshot-20181220-2245/ mkdir build cd build

创建build.sh文件,内容:

../configure --prefix=/home/hrx/build_opencv/opencv_depend/ --host=arm-poky-linux-gnueabi --enable-shared --disable-asm make make install

执行build.sh文件

7、交叉编译jpegsrc.v9c

tar zxvf jpegsrc.v9c.tar.gz cd jpeg-9c/ mkdir build cd build

创建build.sh文件,内容:

../configure --prefix=/home/hrx/build_opencv/opencv_depend/ --host=arm-poky-linux-gnueabi --enable-shared --enable-static make make install

执行build.sh文件

8、交叉编译ffmpeg-4.1

tar xvf ffmpeg-4.1.tar.bz2 cd ffmpeg-4.1/ mkdir build cd build

创建build.sh文件,内容:

../configure --prefix=/home/hrx/build_opencv/opencv_depend/ --enable-gpl --enable-shared --cross-prefix=arm-poky-linux-gnueabi- --cc="arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a7" --enable-cross-compile --arch=arm --target-os=linux --enable-nonfree --enable-pthreads --enable-ffplay --extra-cflags=-I/home/hrx/build_opencv/opencv_depend/include/ --extra-ldflags=-L/home/hrx/build_opencv/opencv_depend/include/lib/ make make install

执行build.sh文件

参考博客:https://blog.csdn.net/ajianyingxiaoqinghan/article/details/70194392

总结

以上是生活随笔为你收集整理的i.MX6 交叉编译zlib、yasm、xvidcore、libpng、x264、jpegsrc、ffmpeg的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。