如何为android中的所有cpu架构编译ffmpeg。目前我正在使用以下脚本生成仅用于arm的库。
#!/bin/bash
NDK=$HOME/ndk32
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86
function build_one
{
./configure \
--prefix=$PREFIX \
--enable-shared \
--disable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--disable-doc \
--disable-symver \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
build_one
我想支持所有可能的平台。
答案 0 :(得分:1)
只需使用不同的工具链,请参阅 AndroidFFmpeg 项目中的build_android.sh作为一个很好的示例。请注意,它也处理ARM NEON SIMD的库,如果检测到NEON支持,它将在运行时加载。