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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章