10

我阅读了有关在 Windows 上进行 NDK 编程的要求,其中说我们需要。阅读Cygwin有关 Cygwin 的内容,说我们需要它,因为它是a way to make Windows support some linux functionality。但我的问题是在哪个编程阶段(确切位置)需要 Cygwin,为什么?非常欢迎有关此主题的其他信息

4

5 回答 5

30

从版本 7 开始的 Android NDK 不需要 Cygwin。见这里:http: //developer.android.com/sdk/ndk/index.html

现在,您可以通过从项目路径的命令行调用 ndk-build.cmd 脚本,在没有 Cygwin 的情况下在 Windows 上构建 NDK 源文件。该脚本采用与原始 ndk-build 脚本完全相同的参数。Windows NDK 软件包带有自己的预构建二进制文件,用于 GNU Make、Awk 和构建所需的其他工具。您不需要安装任何其他东西来获得工作的构建系统。

它提到你不能在没有 Cygwin 的情况下使用 ndk-gdb 脚本。虽然这是真的,但您实际上可以在没有 Cygwin 的情况下直接使用 gdb 可执行文件,只有这样您才需要手动正确设置它。

于 2012-05-07T15:34:38.217 回答
2
  1. 至少NDK-r8b,如果你想构建你的.so,你不需要Cygwin。
  2. 但是,如果你想使用 ndk-gdb 来调试你的本地代码,你必须使用 Cygwin。
  3. 而且,在我的实验中,如果您在 Cygwin 下使用 ndk-gdb 来调试从 Windows cmd 构建的本机代码,则 ndk-gdb 似乎无法识别调试信息。因此,出于调试目的,我构建了本机 Cygwin。
于 2013-01-24T03:20:18.660 回答
1

Make命令来执行Android.mk文件。

Android.mk 文件包含要编译的 c/c++ 文件列表以及库名称 (.so)。

于 2012-05-07T11:24:45.677 回答
1

(来自 NDK-r8e NDK-GDB 文档)目前“ndk-gdb”需要 Unix shell 才能运行。这意味着需要 Cygwin 才能在 Windows 上运行它。我们希望在未来的 NDK 版本中摆脱这个限制。

于 2013-09-30T01:33:56.197 回答
-2

Cygwin 是一组工具,可为 Windows 提供 Linux 外观和感觉环境。 http://www.cygwin.com/

于 2012-05-07T11:27:48.650 回答