第一步 下载源码 最新版即可 我用的是3.100
lame下载官网
或者 百度网盘 我将写好的脚本以及编译好的库都在里面了
链接: https://pan.baidu.com/s/1Q11gZM-CrLiV72rCmoWWng 密码: slrl
第二步 创建shell脚本, 创建后 要对该脚本文件授权
chmod 777 脚本文件路径
内容如下:
#!/bin/sh
# shared:关闭动态链接库 单独使用 frontend: 不编译出lame的可执行文件
CONFIGURE_FLAGS="--disable-shared --disable-frontend"
# 苹果手机个型号架构
ARCHS="arm64 armv7s x86_64 i386 armv7"
# directories
SOURCE=""
FAT="fat-lame"
SCRATCH="scratch-lame"
# must be an absolute path
THIN=`pwd`/"thin"
COMPILE="y"
LIPO="y"
# 根据外面传的参数做判断 如果是lipo 不参数编译 如果是其他架构就只编译那个架构的库
if [ "$*" ]
then
if [ "$*" = "lipo" ]
then
# skip compile
COMPILE=
else
ARCHS="$*"
if [ $# -eq 1 ]
then
# skip lipo
LIPO=
fi
fi
fi
# 开始编译
if [ "$COMPILE" ]
then
CWD=`pwd`
for ARCH in $ARCHS
do
echo "building $ARCH..."
echo "当前根目录: $CWD"
mkdir -p "$SCRATCH/$ARCH"
mkdir -p "$THIN/$ARCH/lib"
mkdir -p "$THIN/$ARCH/include"
cd "$SCRATCH/$ARCH"
if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]
then
PLATFORM="iPhoneSimulator"
if [ "$ARCH" = "x86_64" ]
then
SIMULATOR="-mios-simulator-version-min=7.0"
HOST=x86_64-apple-darwin
else
SIMULATOR="-mios-simulator-version-min=5.0"
HOST=i386-apple-darwin
fi
else
PLATFORM="iPhoneOS"
SIMULATOR=
HOST=arm-apple-darwin
fi
XCRUN_SDK=`echo $PLATFORM | tr '[:upper:]' '[:lower:]'`
CC="xcrun -sdk $XCRUN_SDK clang -arch $ARCH"
#AS="$CWD/$SOURCE/extras/gas-preprocessor.pl $CC"
CFLAGS="-arch $ARCH $SIMULATOR"
if ! xcodebuild -version | grep "Xcode [1-6]\."
then
CFLAGS="$CFLAGS -fembed-bitcode"
fi
CXXFLAGS="$CFLAGS"
LDFLAGS="$CFLAGS"
$CWD/configure \
$CONFIGURE_FLAGS \
--host=$HOST \
--prefix="$THIN/$ARCH" \
CC="$CC" CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"
make -j3 install
cd $CWD
done
fi
#合并模拟器和真机库
if [ "$LIPO" ]
then
echo "building fat binaries..."
mkdir -p $FAT/lib
set - $ARCHS
CWD=`pwd`
cd $THIN/$1/lib
for LIB in *.a
do
cd $CWD
lipo -create `find $THIN -name $LIB` -output $FAT/lib/$LIB
done
cd $CWD
cp -rf $THIN/$1/include $FAT
fi
第三步 终端cd 到 你下的lame的解压文件下(注意把脚本也要放到lame的目录下),直接运行你的脚本文件。如: ./build-lame.sh;
成功后的静态库就在你的当前目录下的fat-lame下的lib里面,如没有就失败了。
注意事项:
如果编译失败就换台电脑试一下吧, 我自己的电脑就会报错,用别人的电脑一下就成功了;
错误如图:
image.png
网友评论