arm64的Android FFMPEG生成失败,出现错误?

arm64的Android FFMPEG生成失败,出现错误?,android,ffmpeg,android-ndk,android-ffmpeg,Android,Ffmpeg,Android Ndk,Android Ffmpeg,我已经用下面的构建脚本构建了ffmpeg。 它适用于armv7。 当我尝试使用arm64体系结构时,它给了我以下错误 NDK/toolchains/aarch64-linux-android-4.9/prebuild/darwin-x86_64/bin/aarch64-linux-android-gcc无法创建可执行文件 编辑:- 以下生成脚本已用于生成 NDK=/Users/tapansodha/Documents/Softwares/AndroidStudio/adt-bundle-mac

我已经用下面的构建脚本构建了ffmpeg。

它适用于armv7。
当我尝试使用arm64体系结构时,它给了我以下错误

NDK/toolchains/aarch64-linux-android-4.9/prebuild/darwin-x86_64/bin/aarch64-linux-android-gcc无法创建可执行文件

编辑:-

以下生成脚本已用于生成

NDK=/Users/tapansodha/Documents/Softwares/AndroidStudio/adt-bundle-mac-x86_64-20140702/android-ndk-r10e
function build_one
{
./configure --target-os=linux \
--prefix=$PREFIX \
--enable-cross-compile \
--extra-libs="-lgcc" \
--arch=arm \
--cc=$CC \
--cross-prefix=$PREBUILT/bin/aarch64-linux-android- \
--nm=$NM \
--sysroot=$PLATFORM \
--extra-cflags=" -O3 -fpic -DANDROID -DHAVE_SYS_UIO_H=1 -Dipv6mr_interface=ipv6mr_ifindex -fasm -Wno-psabi -fno-short-enums -fno-strict-aliasing -finline-limit=300 $OPTIMIZE_CFLAGS " \
--enable-shared \
--disable-static \
--extra-ldflags="-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog" \
--disable-everything \
--disable-debug \
--disable-programs \
--disable-doc \
--enable-decoder=h264 \
--enable-decoder=mjpeg \
--enable-decoder=mpeg4 \
--enable-decoder=mxpeg \
--enable-decoder=aac \
$ADDITIONAL_CONFIGURE_FLAG

make clean
make  -j4 install
}

#arm arm64-v8a
PLATFORM=$NDK/platforms/android-21/arch-arm64/
PREBUILT=$NDK/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64
CC=$PREBUILT/bin/aarch64-linux-android-gcc
NM=$PREBUILT/bin/aarch64-linux-android-nm
CPU=arm64
PREFIX=./android_arm64n/$CPU
ADDITIONAL_CONFIGURE_FLAG=
build_one

第一步应该是升级NDK。aarch64在r10e发布时是非常新的,从那时起,编译器可能已经针对这一目标进行了改进

第二,当涉及到autoconf项目时,使用NDK的内置功能可能比自己装配一个要容易得多

$ $NDK/build/tools/make_standalone_toolchain.py \
    --arch arm64 --install-dir my-toolchain
$ my-toolchain/bin/clang++ foo.cpp

以上内容将作为交叉编译器使用。无需自己处理
--sysroot
-gcc工具链
,或其他任何问题。

尝试将--arch=arm更改为--arch=aarch64

您可以共享脚本的aarch64变体吗?一个有效的方法对于找出哪里出了问题并没有多大用处:)谢谢丹的邀请。我已经添加了构建脚本。
$ $NDK/build/tools/make_standalone_toolchain.py \
    --arch arm64 --install-dir my-toolchain
$ my-toolchain/bin/clang++ foo.cpp