java – 执行失败的任务’:app:compileDebugNdk’无法运行此命
Error:Execution failed for task ':app:compileDebugNdk'.
Error Code: 1 这是我在android studio上在我的项目上运行make时得到的输出. 这就是我的Android.mk文件 LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := Main LOCAL_SRC_FILES := Main.cpp LOCAL_LDLIBS := -llog -ljnigraphics -lz -landroid LOCAL_SHARED_LIBRARIES := libavformat libavcodec libswscale libavutil include $(BUILD_SHARED_LIBRARY) $(call import-module,ffmpeg/android/arm) 这就是我的application.mk文件 APP_ABI := armeabi #APP_ABI := armeabi-v7a APP_PLATFORM := android-14 解决方法
错误:执行失败的任务’:app:compileDebugNdk’.
意味着毕业Android插件正在尝试调用ndk-build来编译源代码.您应该获得比日志窗口中的错误代码更多的详细信息. 无论如何,目前它使用自动生成的Makefile并忽略您的,因为您需要集成ffmpeg无法工作. 要克服这个问题,您应该禁用插件的自动ndk集成,并使其使用标准libs位置来获取.so文件: sourceSets.main { jniLibs.srcDir 'src/main/libs' jni.srcDirs = [] //disable automatic ndk-build call } 从那里你可以打电话给ndk-建立自己,或者让gradle给你打电话: import org.apache.tools.ant.taskdefs.condition.Os // call regular ndk-build(.cmd) script from app directory task ndkBuild(type: Exec) { if (Os.isFamily(Os.FAMILY_WINDOWS)) { commandLine 'ndk-build.cmd','-C',file('src/main').absolutePath } else { commandLine 'ndk-build',file('src/main').absolutePath } } tasks.withType(JavaCompile) { compileTask -> compileTask.dependsOn ndkBuild } 有关为什么这一切的更多信息,你可以检查这个gist和我的blog post. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |