本文主要是介绍NDK编译错误Unknown Application ABI,Unable to detect application ABI’s,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
出现这个错误,有2个可能:
第一个就是,eclipse的NDK目录没有指向,NDK的文件夹。
第二就是,NDK_MODULE_PATH目录没有正确设置。
首先这是一个环境变量,NDK编译的时候去搜索这个值。
* Due to GNU Make limitations, NDK_MODULE_PATH must not contain any space.The NDK will complain if this is not the case.* Use ':' as the path separator.* On Windows, use '/' as the directory separator.
不能有空格,使用:分隔多个路径,使用 / 作为文件夹分隔。重要的是NDK默认去NDK目录下的source搜索。这就是NDK例子里面的mk设置:
$(call import-module,android/native_app_glue)
这个路径android/native_app_glue就是source下面的。
有4种设置NDK_MODULE_PATH方法是:
第一,设置环境变量
第二,在ndk_build后面加参数,如ndk-build NDK_DEBUG=1 NDK_MODULE_PATH=e:/blabla
第三,在build_native.sh中 运行ndk-build之前使用export命令定义环境变量NDK_MODULE_PATH。 如:export NDK_MODULE_PATH=e:/blabla
第四,在mk文件中,import语句之前加入$(call import-add-path,path), 不过这种方法只是相对于, source路径来说的。
经过测试,上面方法都是可以正确用eclipse编译运行的。但是当我使用dubug的时候,并且使用libpng的预编译文件的时候。发现无法debug自定义设置的NDK_MODULE_PATH的路径,解决办法是把预编译文件拷贝到系统的NDK source下面就可以正常debug了。
这篇关于NDK编译错误Unknown Application ABI,Unable to detect application ABI’s的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!