FFmpeg编译i386 OSX 脚本
2024-09-07 06:05:56
话不多说, 直接上脚本
#!/bin/sh # directories
PLATFORM="OSX"
# FFmpeg脚本目录
SOURCE="ffmpeg-2.8.7"
FAT="$PLATFORM/$SOURCE/FFmpeg-OSX" SCRATCH="$PLATFORM/$SOURCE/scratch"
THIN=`pwd`/"$PLATFORM/$SOURCE/thin" # CONFIGURE_FLAGS="--enable-cross-compile \
# --enable-nonfree \
# --enable-libfaac \
# --enable-libmp3lame \
# --enable-libtheora \
# --enable-libvorbis \
# --enable-libxvid \
# --enable-libass \
# --enable-libspeex \
# --enable-libx264 \
# --enable-libvpx \
# --enable-opencl \
# --disable-ffmpeg \
# --enable-gpl \
# --disable-outdev=sdl \
# --disable-ffplay \
# --disable-debug \
# --disable-ffserver \
# --enable-static \
# --enable-shared " CONFIGURE_FLAGS="--enable-cross-compile \
--enable-nonfree \
--enable-opencl \
--disable-ffmpeg \
--enable-gpl \
--disable-outdev=sdl \
--disable-ffplay \
--disable-debug \
--disable-ffserver \
--enable-static \
--enable-shared " CWD=`pwd`
# ARCHS="x86_64 i386"
ARCHS="i386" # FAAC="/usr/local/Cellar/faac/1.28"
# LAMP="/usr/local/Cellar/lame/3.99.5"
# THEORA="/usr/local/Cellar/theora/1.1.1"
# VORBIS="/usr/local/Cellar/libvorbis/1.3.5"
# XVID="/usr/local/Cellar/libxvid/1.3.4"
# ASS="/usr/local/Cellar/libass/0.13.2"
# SPEEX="/usr/local/Cellar/speex/1.2rc1"
# VPX="/usr/local/Cellar/libvpx/1.6.0"
# X264="/usr/local/Cellar/x264/r2668" for ARCH in $ARCHS
do
echo "building $ARCH..."
mkdir -p "$SCRATCH/$ARCH"
cd "$SCRATCH/$ARCH" CFLAGS="-arch $ARCH" SDK="macosx" XCRUN_SDK=`echo $SDK | tr '[:upper:]' '[:lower:]'`
CC="xcrun -sdk $XCRUN_SDK clang"
CXXFLAGS="$CFLAGS"
LDFLAGS="$CFLAGS" if [ "$FAAC" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libfaac"
CXXFLAGS="$CXXFLAGS -I$FAAC/include"
LDFLAGS="$LDFLAGS -L$FAAC/lib"
fi
if [ "$LAMP" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libmp3lame"
CXXFLAGS="$CXXFLAGS -I$LAMP/include"
LDFLAGS="$LDFLAGS -L$LAMP/lib"
fi
if [ "$THEORA" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libtheora"
CXXFLAGS="$CXXFLAGS -I$THEORA/include"
LDFLAGS="$LDFLAGS -L$THEORA/lib"
fi
if [ "$VORBIS" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libvorbis"
CXXFLAGS="$CXXFLAGS -I$VORBIS/include"
LDFLAGS="$LDFLAGS -L$VORBIS/lib"
fi
if [ "$XVID" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libxvid"
CXXFLAGS="$CXXFLAGS -I$XVID/include"
LDFLAGS="$LDFLAGS -L$XVID/lib"
fi
if [ "$ASS" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libass"
CXXFLAGS="$CXXFLAGS -I$ASS/include"
LDFLAGS="$LDFLAGS -L$ASS/lib"
fi
if [ "$SPEEX" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libspeex"
CXXFLAGS="$CXXFLAGS -I$SPEEX/include"
LDFLAGS="$LDFLAGS -L$SPEEX/lib"
fi
if [ "$VPX" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libvpx"
CXXFLAGS="$CXXFLAGS -I$VPX/include"
LDFLAGS="$LDFLAGS -L$VPX/lib"
fi
if [ "$X264" ]
then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-libx264"
CXXFLAGS="$CXXFLAGS -I$X264/include"
LDFLAGS="$LDFLAGS -L$X264/lib"
fi TMPDIR=${TMPDIR/%\/} $CWD/$SOURCE/configure \
--target-os=darwin \
--arch=$ARCH \
$CONFIGURE_FLAGS \
--extra-cflags="$CXXFLAGS" \
--extra-ldflags="$LDFLAGS" \
--prefix="$THIN/$ARCH" \
|| exit
# --cc="$CC" \ make -j3 install $EXPORT || exit
cd $CWD
done
echo Done
该脚本只要放在FFmpeg源码上一层目录即可运行.
测试过是可以跑起来的, 但是要添加其他的编译参数则要相应的库, 而其他库的i386版也需要自己编译, 网上没有找到, 也希望有大神可以帮忙编译
最新文章
- 转 Jmeter之Bean shell使用(一)
- PAT/简单模拟习题集(一)
- velocity.js用法整理1
- make[1]: *** [pcrecpp.lo] 错误 1
- make -f dc_debug.mak 提示错误";/usr/bin/ld:can not find -l***";解决办法
- (10.09作业)学生选课数据库SQL语句练习题
- 九度OJ 1437 To Fill or Not to Fill -- 贪心算法
- word在线编辑\生成图片(包含截图与合并)
- [转] 有趣的JavaScript原生数组函数
- 使用Protractor进行AngularJS e2e测试案例
- 将内部部署网络和 Windows Azure 集成的新选项: 使用AT&;T
- Embedded Linux Primer----嵌入式Linux基础教程--前言
- Storm官方文档翻译之设置开发环境
- 关于adb重启的一些问题
- urllib.parse.urlencode
- codevs 3061 质子撞击炮②
- BFPRT算法
- C#部分试题实例
- CefGlue在WinXP下闪退的排查方法
- C++ 关于MFC多线程编程中的一些注意事项 及自定义消息的处理