不用交叉編譯,make ffmpeg通常沒有多少問題。但若是是用交叉編譯,配置ffmpeg就顯得比較重要,若是配置不正確,編譯就沒法經過。linux
通常狀況下 ./configure --helpspa
配置選項比較多,這也是ffmpeg比較靈活的地方。編譯老是出現以下問題:code
配置選項通常以下:
[root@tanyc-linux ffmpeg-checkout-2009-08-10]# ./configure --enable-cross-compile --cc=arm-linux-gcc --enable-gpl --arch=armv4l --enable-shared --target-os=linux --disable-mmx --disable-network --enable-armv6t2 --enable-armvfp --disable-yasmorm
2.LIB庫的使用:get
通常編譯完成後,使用編譯好的lib庫編譯鏈接另外一個程序時,須要設置lib 的搜索路徑。通常能夠把庫拷貝到系統的lib路徑下(usr/lib 或lib),或者設置本身的lib路徑,可經過LD_LIBRARY_PATH設置:如export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xxx/lib 。也能夠將庫的路徑/home/xxx/lib 添加到/etc/ld.so.conf文件中,再經過命令ldconfig 更新到/etc/ld.so.cache中.it
3.命令asm
./configure --disable-yasm --enable-cross-compile --cc=arm-hisiv200-linux-gnueabi-gcc --enable-gpl --enable-shared --arch=arm --enable-shared --target-os=linux --prefix=/usr/local/ffmpeg編譯
4.使用form
arm-hisiv200-linux-gnueabi-gcc -Wall -g -I/usr/local/ffmpeg/include -o segmenter m3u8-segmenter.c -L/usr/local/ffmpeg/lib -Wl,-rpath=/usr/local/ffmpeg/lib/ -lavformat -lavcodec -lavutil -lmtest
5.使用segmenter切片
./segmenter -i test.ts -d 10 -p onedemo -m test.m3u8 -u ./