繁体   English   中英

Android ndk-build命令什么都不做

[英]Android ndk-build command does nothing

我有一个类似的问题发布在这里:

Android NDK:为什么ndk-build不会在Eclipse中生成.so文件和新的libs文件夹?

...虽然我运行的是Windows 7,但不是Mac OS。 基本上运行ndk-build命令,没有错误但不创建.so文件(同样,因为我在Windows上这应该创建.dll而不是.so?)。 我尝试从root,jni,src文件夹等运行命令,但得到了相同的结果; cmd只需几秒钟后返回到提示器。 我使用NDK_LOG = 1参数从jni文件夹再次运行它以查看发生了什么。 以下是在jni文件夹中运行ndk-build之后的日志结果的一部分内容(在成功识别平台之后等)...

Android NDK:在/ workspace / NdkFooActivity / jni中寻找jni / Android.mk
Android NDK:在/ workspace / NdkFooActivity中寻找jni / Android.mk
Android NDK:找到了!
Android NDK:找到项目路径:/ workspace / NdkFooActivity
Android NDK:输出路径:/ workspace / NdkFooActivity / obj
Android NDK:解析/cygdrive/c/android-ndk-r8/build/core/default-application.mk
Android NDK:在/workspace/NdkFooActivity/project.properties中找到APP_PLATFORM = android-15
Android NDK:应用程序本地目标未知平台'android-15'
Android NDK:切换到android-14
Android NDK:使用构建脚本/workspace/NdkFooActivity/jni/Android.mk
Android NDK:应用程序“本地”不可调试
Android NDK:选择发布优化模式(app不可调试)
Android NDK:添加导入目录:/ cygdrive / c / android-ndk-r8 / sources
Android NDK:为ABI'armeabi'构建应用程序'local'
Android NDK:使用目标工具链'arm-linux-androideabi-4.4.3'代表'armeabi'ABI
Android NDK:寻找带有'cxx-stl / system'标签的导入模块
Android NDK:探测/cygdrive/c/android-ndk-r8/sources/cxx-stl/system/Android.mk
Android NDK:在/ cygdrive / c / android-ndk-r8 / sources / cxx-stl / system中找到
Android NDK:Cygwin依赖文件转换脚本:

...之后它只运行最后一行中提到的脚本,然后终止。 有任何想法吗? 谢谢!

设置一个生成器。 有关如何执行此操作,请参阅以下文章:

http://maxters.net/2011/02/android-ndk-builder-for-eclipse-in-windows/

从NDK r8开始有一个“小”变化 - Cygwin不再需要了,我在使用Cygwin和NDK r8构建本机库时遇到了麻烦 - 有一些关于cxx-stl的错误消息...

上面链接中的几乎所有内容都可以,但将Main选项卡中的Arguments保留为空并将Location更改为:

${env_var:ANDROID_NDK_ROOT}/ndk-build.cmd

我使用系统变量路径ANDROID_NDK_ROOT ,但您可以提供ndk-build.cmd的完整路径。 此外,无需在“环境”选项卡中设置任何变量。

以这种方式设置你的建设者,你会没事的。

简而言之,Android建立在Linux操作系统的顶层,所以即使你在Windows上,你也会获得扩展名为.so的Linux库。

如果您在CDT之后在Eclipse中配置NDK支持,那么以下链接是有启发性的,但缺少一个细节(已经是2017年夏天)。

http://maxters.net/2011/02/android-ndk-builder-for-eclipse-in-windows/

您需要配置外部构建器位置,而不是指向cygwin \\ bin \\ bash.exe并添加为参数ndk-build.cmd位置,这对我在Windows 7和10上有用。

在外部构建器的“编辑配置”对话框中,执行以下操作: - 对于位置 - >指定“ndk-build.cmd”的位置。 即“D:\\ Android \\ NDK \\ ndk-build.cmd” - 对于参数 - >只需指定“全部”

NDK构建系统依赖通配符来查找要编译的源。 如果某个地方有路径错误,它将找不到任何来源并且什么都不做。 仔细检查Android.mk。 除非您发布Android.mk和源树的描述,否则不能说更多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM