【问题标题】:Getting cygwin to recognise my updated awk for the android ndk?让 cygwin 识别我为 android ndk 更新的 awk?
【发布时间】:2012-02-17 14:13:40
【问题描述】:

这开始是一个 Android 问题,但我认为是一个 linux/cygwin 问题。

Android ndk 附带了不合适的 awk 版本 - definitive report here - 所以我试图让 cygwin 接受我不想使用 ndk awk,而是使用 nawk 或 gawk。

请记住,我对 linux/cygwin 一无所知,这些是我的发现:

问题的第一部分已经回答了here,所以我知道我需要将现有的 awk 重命名为 awk_,这样它就不会被拾取(完成)。而且我需要将 cygwin 环境变量 HOST_AWk 设置为 gawk (或 nawk - 两者都由 cygwin 提供)。 (对我而言)执行此操作的简单方法是在 Windows 中设置该环境变量 - 然后当 cygwin 运行时,它会从 Windows 导入所有环境内容。

所以我想我知道该怎么做,但是当我尝试直接在 eclipse 中(全部构建)或 bash 的 cygwin 中进行构建时,似乎没有获取 HOST_AWK 的值:

Barry@BARRY /cygdrive/c/data/eclipse/camfeeda/jni
$ ndk-build
make: awk: Command not found
Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
/cygdrive/c/DATA/eclipse/android/android-ndk-r7/build/core/init.mk:258: *** Android NDK: Aborting.    .  Stop.

Barry@BARRY /cygdrive/c/data/eclipse/camfeeda/jni
$ printenv HOST_AWK
c:\cygwin\bin\gawk.exe

如您所见,我已在正确的位置将 HOST_AWK 设置为 gawk.exe,但我已经尝试过:

HOST_AWK=c:\cygwin\bin\gawk.exe
HOST_AWK=c:\cygwin\bin\gawk
HOST_AWK=c:\cygwin\bin\nawk.exe
HOST_AWK=c:\cygwin\bin\nawk

我已经尝试使用正斜杠以防出现问题,但我仍然遇到同样的错误:(

我感觉好像离我很近,但我无法迈出最后一步。为什么 ndk-build 不读取环境变量 HOST_AWK 并完成繁琐的工作?!谁能让我摆脱痛苦?

非常感谢

巴里

编辑:我也试过了:

HOST_AWK=/cygdrive/c/cygwin/bin/gawk.exe

等等,但没有快乐。

乙。

【问题讨论】:

  • 为什么需要设置HOST_AWK?对我来说,它只是删除/重命名 ndk-r7 附带的 awk.exe。他们一切正常,无需设置 HOST_AWK env.variable。
  • 天哪,它有效。谢谢 Mārtiņš(还有帮助离线的 Tom Johnson)。 Mārtiņš 将其作为官方答案,我会正式接受。

标签: android android-ndk cygwin


【解决方案1】:

对我来说,它只是删除/重命名 ndk-r7 附带的 awk.exe。他们一切正常。无需设置 HOST_AWK 环境变量。

【讨论】:

  • 非常感谢。我现在在 gawk 运行后遇到另一个错误 - make 似乎稍后会崩溃,但一次出现一个故障! B.
猜你喜欢
  • 1970-01-01
  • 2012-06-25
  • 1970-01-01
  • 1970-01-01
  • 2020-08-09
  • 2012-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多