INSTALL.html revision f78e926710927bb3f90b9ac3f97b6acec9357041
148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerAndroid NDK Installation 248ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 348ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerIntroduction: 448ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner------------- 548ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 648ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerPlease read docs/OVERVIEW.TXT to understand what the Android NDK is and is not. 748ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerThis file gives instructions on how to properly setup your NDK. 848ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 948ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 1048ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerI. Requirements: 1148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner---------------- 1248ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 1348ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerThe Android NDK currently requires a Linux, OS X or Windows host operating system. 14f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turner 15f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' TurnerWindows users will need to install Cygwin 1.7 or later (http://www.cygwin.com) to 16f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turneruse the NDK. Note that running it under MSys is not supported. Running under the 17f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turnernow-obsolete Cygwin 1.5 has not been tested and might not work. Consider upgrading 18f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turnerto 1.7 instead in case of problems. 1948ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 2048ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerYou will need to have the Android SDK and its dependencies installed. The NDK 2148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turnercannot generate final application packages (.apk files), only the shared library 2248ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turnerfiles that can go into them. 2348ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 2448ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 2548ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerIMPORTANT: 2648ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner The Android NDK can only be used to target system images using 2748ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner the Cupcake (1.5) or later releases of the platform. 2848ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 2948ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner This is due to subtle toolchain and ABI related changed that make 3048ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner it incompatible with 1.0 and 1.1 system images. 3148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 3225f47bc03dbe536d2fb4a231316a38a2d0a8ee59David 'Digit' TurnerThe NDK requires GNU Make 3.81 or later being available on your development 3348ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turnersystem. Earlier versions of GNU Make might work but have not been tested. 3448ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 3548ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerYou can check this by running 'make -v' from the command-line. The output 3648ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turnershould look like: 3748ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 3848ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner GNU Make 3.81 3948ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner Copyright (C) 2006 Free Software Foundation, Inc. 4048ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner ... 4148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 4248ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' TurnerOn certain systems, GNU Make might be available through a different command like 4348ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner'gmake' or 'gnumake'. For these systems, replace 'make' by the appropriate command 44f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turnerwhen invoking the NDK build system as described in the documentation. You might 45f78e926710927bb3f90b9ac3f97b6acec9357041David 'Digit' Turneralso want to define the GNUMAKE environment variable to point to it. 4648ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 4725f47bc03dbe536d2fb4a231316a38a2d0a8ee59David 'Digit' TurnerThe NDK also requires a Nawk or GNU Awk executable being available on your 4825f47bc03dbe536d2fb4a231316a38a2d0a8ee59David 'Digit' Turnerdevelopment system. Note that the original 'awk' program doesn't implement 4925f47bc03dbe536d2fb4a231316a38a2d0a8ee59David 'Digit' Turnerthe 'match' and 'substr' functions used by the NDK build system. 5025f47bc03dbe536d2fb4a231316a38a2d0a8ee59David 'Digit' Turner 5148ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 523ffa683dea8b68c97be013c1a7061888f49c1c72Xavier DucrohetII. Preparing your installation prebuilt cross-toolchain binaries: 530e3db4dad04bba1a6aed5ad15489999078d0361dDavid 'Digit' Turner------------------------------------------------------------------ 5448ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 5535f944d26f33fff3e59ab449c991b18260a5fa0bDavid 'Digit' TurnerPrevious releases required you to run the 'build/host-setup.sh' script to 5635f944d26f33fff3e59ab449c991b18260a5fa0bDavid 'Digit' Turnerconfigure the NDK. However, this step has been removed in release 4 (a.k.a. r4). 5748ef1859ef0bb25547e5aceeedb9b175c6193bc5David 'Digit' Turner 5835f944d26f33fff3e59ab449c991b18260a5fa0bDavid 'Digit' TurnerThe auto-detection and sanity checks that were performed by the script have 5935f944d26f33fff3e59ab449c991b18260a5fa0bDavid 'Digit' Turnerbeen moved into the NDK makefiles (and are now performed each time you invoke 6035f944d26f33fff3e59ab449c991b18260a5fa0bDavid 'Digit' TurnerGNU Make). 61