FFmpeg编译各个架构的so文件

2019-11-21  本文已影响0人  拉弓的松鼠在旋转

前言

说到编译脚本,这里最好需要点脚本编译的知识,当然小白可以可以用,只不过遇到问题会一头懵。

脚本的引用

这里我直接用某Github上的一位大佬的脚本进行更改

编译准备

替换NDK的路径

如果你直接用build.sh文件编译(这个的可以选择一次性编译多个,电脑一般的不建议使用)
build.sh 文件下的export NDK=
_build_ffmpeg.sh 文件下的 export NDK=
_build_openssl.sh 文件下的 export NDK=

在build.sh里面选择你需要编译架构

#TARGET_ARMEABI_DIR=$WORKING_DIR/armeabi
TARGET_ARMEABIV7A_DIR=$WORKING_DIR/armeabi-v7a
# TARGET_X86_DIR=$WORKING_DIR/x86
# TARGET_MIPS_DIR=$WORKING_DIR/mips
# TARGET_X86_64_DIR=$WORKING_DIR/x86_64
# TARGET_ARMEABI_64_DIR=$WORKING_DIR/arm64-v8a

最后直接命令行直接运行build.sh 文件就行


特别注意的是假如你的是Linux系统下的NDK,那么久需要替换_build_ffmpeg.sh 和_build_openssl.sh 文件下的_PLATFORM路径。比如,我的MAC电脑NDK目录下的是darwin-x86_64
export TARGET=$1

ARM_PLATFORM=$NDK/platforms/android-19/arch-arm/
ARM_PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64

ARM64_PLATFORM=$NDK/platforms/android-21/arch-arm64/
ARM64_PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64

X86_PLATFORM=$NDK/platforms/android-19/arch-x86/
X86_PREBUILT=$NDK/toolchains/x86-4.9/prebuilt/darwin-x86_64

X86_64_PLATFORM=$NDK/platforms/android-21/arch-x86_64/
X86_64_PREBUILT=$NDK/toolchains/x86_64-4.9/prebuilt/darwin-x86_64

MIPS_PLATFORM=$NDK/platforms/android-19/arch-mips/
MIPS_PREBUILT=$NDK/toolchains/mipsel-linux-android-4.9/prebuilt/darwin-x86_64
如果查看你的ndk不是这个路径,需要替换下

当然你也可以只编译ffmpeg不需要openssl的话,可以直接命令行:./_build_ffmpeg.sh + 架构名
同样,如果想直接编译openssl的话,可以命令行:./_build_openssl.sh + 架构名

脚本地址

上一篇 下一篇

猜你喜欢

热点阅读