1

我花了一整天时间看了几个教程,但我无法让 ndk-build 编译我的 make 文件。要查看我当前的代码是什么,请查看我在此处关注的教程:https ://thenewcircle.com/s/post/1153/introduction_to_ndk

我在 Windows 7 64 位系统上,所以我正在运行 Cygwin。我转到项目目录“FibonacciNative”并输入“ndk-build”,这就是我得到的:

$ ndk-build
make: /cygdrive/c/Android/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows-/bin/arm-linux-androideabi-gcc: Command not found
make: /cygdrive/c/Android/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows-/bin/arm-linux-androideabi-gcc: Command not found
Compile thumb  : com_marakana_android_fibonaccinative_FibLib <= com_marakana_android_fibonaccinative_FibLib.c
/bin/sh: /cygdrive/c/Android/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows-/bin/arm-linux-androideabi-gcc: No such file or directory
/cygdrive/c/Android/android-ndk-r8/build/core/build-binary.mk:240: recipe for target `obj/local/armeabi/objs/com_marakana_android_fibonaccinative_FibLib/com_marakana_android_fibonaccinative_FibLib.o' failed
make: *** [obj/local/armeabi/objs/com_marakana_android_fibonaccinative_FibLib/com_marakana_android_fibonaccinative_FibLib.o] Error 127

我总是得到“找不到命令”。我究竟做错了什么?

谢谢马特

安装东西的文件夹:
C:\Android\android-ndk-r8
C:\Android\android-sdk
C:!Personal\eclipse/FibonacciNative
C:\cygwin

在 Cygwin 中,我有 gcc-core、gcc-mingw-core、libgcc1。
我可能错过了 Cygwin 的一些东西吗?

4

1 回答 1

2

看起来这是脚本中的错误。我将 HOST_TAG 硬编码到 \build\core\init.mk 中的窗口,一切正常。向克里斯·斯特拉顿 +1 寻求帮助。

# If we are on Windows, we need to check that we are not running
# Cygwin 1.5, which is deprecated and won't run our toolchain
# binaries properly.
#
ifeq ($(HOST_TAG),windows-x86)
    ifeq ($(HOST_OS),cygwin)
        # On cygwin, 'uname -r' returns something like 1.5.23(0.225/5/3)
        # We recognize 1.5. as the prefix to look for then.
        CYGWIN_VERSION := $(shell uname -r)
        ifneq ($(filter XX1.5.%,XX$(CYGWIN_VERSION)),)
            $(call __ndk_info,You seem to be running Cygwin 1.5, which is not supported.)
            $(call __ndk_info,Please upgrade to Cygwin 1.7 or higher.)
            $(call __ndk_error,Aborting.)
        endif
    endif
    # special-case the host-tag
    HOST_TAG := windows
endif

HOST_TAG := windows

我通过在“找不到主机 tols 预建目录”之后搜索消息中的拼写错误找到了它:)

于 2012-06-05T13:32:05.883 回答