话不多说, 直接上脚本
#!/bin/sh
PLATFORM="OSX"
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-opencl \
--disable-ffmpeg \
--enable-gpl \
--disable-outdev=sdl \
--disable-ffplay \
--disable-debug \
--disable-ffserver \
--enable-static \
--enable-shared "
CWD=`pwd`
ARCHS="i386"
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版也需要自己编译, 网上没有找到, 也希望有大神可以帮忙编译
手机扫一扫
移动阅读更方便
你可能感兴趣的文章