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

发布了62 篇原创文章 · 获赞 106 · 访问量 21万+

猜你喜欢

转载自blog.csdn.net/lang523493505/article/details/85236669