Android NDK Installation

Introduction:
-------------

Please read docs/OVERVIEW.html to understand what the Android NDK is and is not.
This file gives instructions on how to properly setup your NDK.


I. Requirements:
----------------

The Android NDK currently requires a Linux, OS X or Windows host operating system.

Windows users will need to install Cygwin 1.7 or later (http://www.cygwin.com) to
use the NDK. Note that running it under MSys or Cygwin 1.5 is not supported.

You will need to have the Android SDK and its dependencies installed. The NDK
cannot generate final application packages (.apk files), only the shared library
files that can go into them.


IMPORTANT:
  The Android NDK can only be used to target system images using
  the Cupcake (1.5) or later releases of the platform.

  This is due to subtle toolchain and ABI related changed that make
  it incompatible with 1.0 and 1.1 system images.

The NDK requires GNU Make 3.81 or later being available on your development
system. Earlier versions of GNU Make might work but have not been tested.

You can check this by running 'make -v' from the command-line. The output
should look like:

          GNU Make 3.81
          Copyright (C) 2006  Free Software Foundation, Inc.
          ...

On certain systems, GNU Make might be available through a different command like
'gmake' or 'gnumake'. For these systems, replace 'make' by the appropriate command
when invoking the NDK build system as described in the documentation. You might
also want to define the GNUMAKE environment variable to point to it.

The NDK also requires a Nawk or GNU Awk executable being available on your
development system. Note that the original 'awk' program doesn't implement
the 'match' and 'substr' functions used by the NDK build system.


II. Preparing your installation prebuilt cross-toolchain binaries:
------------------------------------------------------------------

Previous releases required you to run the 'build/host-setup.sh' script to
configure the NDK. However, this step has been removed in release 4 (a.k.a. r4).

The auto-detection and sanity checks that were performed by the script have
been moved into the NDK makefiles (and are now performed each time you invoke
GNU Make).