为什么我会收到下一个错误?附: ndk-build
处没有任何ndk-bundle
文件夹是什么意思?
Build command failed.
Error while executing process /home/user/Android/Sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/home/user/JNI/app/src/main/jni/Android.mk NDK_APPLICATION_MK=/home/user/JNI/app/src/main/jni/Application.mk APP_ABI=arm64-v8a NDK_ALL_ABIS=arm64-v8a NDK_DEBUG=1 APP_PLATFORM=android-23 NDK_OUT=/home/user/JNI/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/home/user/JNI/app/build/intermediates/ndkBuild/debug/lib APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n}
在我的~/.bashrc
我有下一个:
export NDK=/home/user/Android/Sdk/ndk-bundle
export PATH=$PATH:$NDK
export PATH=$PATH:/home/user/Android/Sdk
更新
来自TERMINAL的:
user@user-X556UQK:~/Android/Sdk/ndk-bundle$ ndk-build NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/src/main/jni/Android.mk NDK_APPLICATION_MK=/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/src/main/jni/Application.mk APP_ABI=armeabi-v7a NDK_ALL_ABIS=armeabi-v7a NDK_DEBUG=1 APP_PLATFORM=android-23 NDK_OUT=/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/build/intermediates/ndkBuild/debug/lib APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n
Android NDK: /home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/src/main/jni/Android.mk: Cannot find module with tag 'ffmpeg/android/arm' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/src/main/jni/Android.mk:14: *** Android NDK: Aborting. . Stop.
答案 0 :(得分:2)
所以,当您在Android Studio中看到此消息时,底线是
description
并且您不知道究竟是什么导致了错误,您应该尝试在终端中使用完全相同的参数运行完全相同的命令。输出可能会给你一个合理的提示。
特别是在这种情况下,来自Android NDK的错误消息解释了哪个文件(Error while executing process …/ndk-bundle/ndk-build with arguments {…}
)和哪一行( 14 )出现问题,甚至解释了您可以采取哪些措施来解决:
在您的环境中定义 NDK_MODULE_PATH ,让NDK找到模块
/home/user/Android/AndroidStudioProjects/JNIINVOKEFFMPEG1/app/src/main/jni/Android.mk
答案 1 :(得分:1)
此解决方案将在android studio中运行。
在软件包中,选择包含ndk文件的文件夹,删除生成的中间文件(包括.build和.externalndkbuild)并清理项目 如果需要,请尝试使缓存无效并在android studio中重新启动
答案 2 :(得分:0)
在终端中启动。得到这个答案:
<块引用>Android NDK:找不到应用项目目录!
Android NDK:请定义 NDK_PROJECT_PATH 变量以指向它。
因此,原因是最大路径长度限制(260 个字符)。
通过将此代码添加到 build.gradle (app),项目构建:
allprojects {
if (Os.isFamily (Os.FAMILY_WINDOWS)) {
buildDir = "$ {projectDir} /../../../../ build"
}
}