1.编译要求
Ubuntu 14.04 lts 64位
faac-1.28
android-ndk-r12b
2.编译步凑
1.下载libfaac源码:
https://nchc.dl.sourceforge.net/project/faac/faac-src/faac-1.28/faac-1.28.zip
下载后解压,我的解压目录为:
/home/wh/faac-1.28
2.在上面的源码目录里面创建编译脚本,命名为config.sh,名字可以随便取,编译脚本类容为:
NDK="/home/wh/android-ndk-r12b"
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
export PLATFORM=$NDK/platforms/android-9/arch-arm/
function build_faac
{
pwd
CFLAGS="-fpic -DANDROID -fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -DANDROID -Wa,--noexecstack -MMD -MP "
#FLAGS="--host=arm-androideabi-linux --enable-static --enable-shared --prefix=$HOME --enable-armv5e "
CROSS_COMPILE=$TOOLCHAIN/bin/arm-linux-androideabi-
export CPPFLAGS="$CFLAGS"
export CFLAGS="$CFLAGS"
export CXXFLAGS="$CFLAGS"
export CXX="${CROSS_COMPILE}g++ --sysroot=${PLATFORM}"
export LDFLAGS="$LDFLAGS"
export CC="${CROSS_COMPILE}gcc --sysroot=${PLATFORM}"
export NM="${CROSS_COMPILE}nm"
export STRIP="${CROSS_COMPILE}strip"
export RANLIB="${CROSS_COMPILE}ranlib"
export AR="${CROSS_COMPILE}ar"
./configure --prefix="/home/wh/faac-1.28/install/" \
--without-mp4v2 \
--enable-static \
--disable-shared \
--host=arm-linux
}
build_faac
其中ndk 的下载地址为: https://dl.google.com/android/repository/android-ndk-r12b-linux-x86_64.zip
下载后解压就行,路径随便,我这里存放的路径是
/home/wh/android-ndk-r12b
注意:上面的脚本里面的NDK 路径要改为你存放的ndk 路径,--prefix 要改为你的路径。
3.源码编译:
进入源码目录执行如下命令:
./config.sh
然后执行make 命令
最后执行make install 命令,执行完后就会在源码目录下面生成一个install 文件夹,里面存放的就是生成的库文件,如下图所示: