libx264、ffmpeg、SDL交叉编译

http://blog.sina.com.cn/s/blog_703121450101ajxr.html

 

libx264、ffmpeg、SDL交叉编译

libx264交叉编译(这部份系转载和本人的修改)

./configure --enable-static --host=arm-linux --disable-asm --prefix=/usr/local/src/cross-ffmpeg

  make CC=arm-hismall-linux-gcc AR=arm-hismall-linux-ar LD=arm-hismall-linux-gcc RANLIB=arm-hismall-linux-ranlib STRIP=arm-hismall-linux-strip

make install-lib-static

FFMPEG交叉编译

ffmpeg-0.9# ./configure --enable-cross-compile --target-os=linux --cross-prefix=arm-linux- --cc=arm-linux-gcc --enable-shared --arch=armv6 --enable-gpl --enable-libx264 --prefix=/usr/local/ffmpeg-arm --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib/

0.9版本成功编译,0.6版本会找不到x264

交叉编译SDL

./configure --prefix=/SDL-1.2.13/SDL --disable-video-qtopia --disable-video-dummy --disable-video-fbcon --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-cdrom --disable-video-x11 --disable-nasm --target=arm-linux --host=arm-linux --enable-video-fbcon --disable-audio

上面的各种配置根据需要添加删除。

最后交叉编译一个工程

arm-linux-gcc -o arm-ymyff ymyff.c myrtp.o -I /usr/local/ffmpeg-arm/include -I /SDL- 1.2.13/SDL/include/SDL -I /opt/FriendlyARM/toolschain/4.4.3/arm-none-linux-gnueabi/sys-root/usr/include -L /usr/local/ffmpeg-arm/lib -L /SDL-1.2.13/SDL/lib -lavformat -lavcodec -lavutil -lswscale -lavdevice -lavfilter -lx264 -lpostproc -lswresample -lm -lz -lSDL

交叉编译 x264 存在的问题

Makefile 存在问题

$(LD) 和 $(AR) 后面 没有空格 导致错误

$(AR) 后面没有参数 可以加上 –r

173行的 $(LD) 后的 $@ 删除

交叉编译编译 ffmpeg 存在的问题

arm-none-linux-gnueabi-pkg-config 不能找到

进入 configure 文件 屏蔽掉 pkg_config_default=”${cross_prefix}${pkg_config_default}” 这句话

 

你可能感兴趣的:(libx264、ffmpeg、SDL交叉编译)