我必须将 NDK 用于客户端项目。我正在使用 Windows 7。
我按照安装说明进行操作。我已经安装了 Cygwin 1.7.1。
在 Cygwin bash 中,我进入 android NDK 根目录。
当我看到目录的内容时,使用 $dir 命令,我可以看到包括 ndk-build 在内的所有内容,但是当我尝试使用 ndk-build 时,这是我得到的结果:
$ndk构建 bash:ndk-build:找不到命令。
不确定我做错了什么。
最佳答案
Cygwin 在您的 Windows 计算机上模拟 GNU/Linux 环境。这意味着您正在使用与 Windows 命令行不完全相同的“Shell”。
如果您在 Windows 命令行中键入 asdf.exe
,它会尝试在当前目录中查找 asdf.exe。如果它能找到它,则执行该文件。如果找不到它,它将遍历 %PATH%
的每个目录并重试。
但是,如果您在 bash 中键入 asdf
(有多种 shell,Bourne Again SHell 就是其中之一),它将不会处理它在当前目录中。相反,它会尝试在您的 PATH
目录之一中找到它。不能在这里给你任何消息来源,但 AFAIK 这是出于安全原因。如果你想运行一个不在你的 PATH
中的文件,你必须在它前面加上它的绝对路径或相对路径。你可以使用./
,它指向当前目录。
这就是为什么您需要键入 ./ndk-build
的原因,因为它位于当前目录中,而不是您的路径中。像 /path/to/ndk/ndk-build
这样的东西也可以,但你必须多输入一点:)。
(其实更复杂,如果你想执行一个文件,你需要它的执行权限。如果你有任何问题谷歌会帮助你。)
关于android - 不能在 Cygwin 上使用 ndk-build,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4797509/