Question: I am trying to make ndk-build to work within Cygwin on windows. As per the NDK documentation (specifically INSTALL.htm), *"The NDK requires GNU Make 3.81 or later being available on your development."*

I have Gnu Make installed on my computer.

So far, so good.

Within Cygwin bash, I cd over to the android NDK root directory. Now when I type in the following command (without parameters right now, just to see if the command works):

*$./ndk-build*  

**ERROR: Cannot find 'make' program. Please install Cygwin make package or define the GNUMAKE variable to point to it.**

So I try to set the GNUMAKE variable, but no luck:

*$export GNUMAKE='/cygdrive/c\Program Files\GnuWin32\bin'*  

**ERROR: Your GNUMAKE variable is defined to an invalid name: /cygdrive/c\Program Files\GnuWin32\bin
Please fix it to point to a valid make executable (e.g. usr/bin/make)**

I even tried setting it to usr/bin/make as it suggests, but same invalid name error.

Anyone, knows how to resolve this?

I'm using Windows 7, NDK r5, Cygwin 1.7.1

Answer: 
This is a generic error. It means there was a problem somehow with the make command, but the error message itself is hidden. To help diagnose the problem, open your ndk\_build script in the ndk directory, and change these lines:

```
ABS_GNUMAKE=`which $GNUMAKE 2> /dev/null`
...
GNUMAKE=`which make 2> /dev/null`

```

to these:

```
ABS_GNUMAKE=`which $GNUMAKE`
...
GNUMAKE=`which make`

```

And then you will get a more detailed error message. Note that it might not even be a problem with the 'make' command, it might be a problem with the 'which' command. Make sure you have cygwin installed.
i worked hard on error in gygwin terminal "gnumake variable is define to invalid name" and after that i get to the point that we simply remove this error by deleting the GNUMAKE path in environment variable both in system and user variable if u created it hope its helps....

mycomputer > system properties > advanced system setting > environment variable