'ndk-build' Overview I. Usage: The Android NDK r4 introduced a new tiny shell script, named 'ndk-build', to simplify building machine code. The script is located at the top-level directory of the NDK, and shall be invoked from the command-line when in your application project directory, or any of its sub-directories. For example: cd $PROJECT $NDK/ndk-build Where $NDK points to your NDK installation path. You can also create an alias or add $NDK to your PATH to avoid typing it every time. II. Options: All parameters to 'ndk-build' are passed directly to the underlying GNU Make command that runs the NDK build scripts. Notable uses include: ndk-build --> rebuild required machine code. ndk-build clean --> clean all generated binaries. ndk-build NDK_DEBUG=1 --> generate debuggable native code. ndk-build V=1 --> launch build, displaying build commands. ndk-build -B --> force a complete rebuild. ndk-build -B V=1 --> force a complete rebuild and display build commands. ndk-build NDK_LOG=1 --> display internal NDK log messages (used for debugging the NDK itself). ndk-build NDK_DEBUG=1 --> force a debuggable build (see below) ndk-build NDK_DEBUG=0 --> force a release build (see below) ndk-build NDK_HOST_32BIT=1 --> Always use toolchain in 32-bit (see below) ndk-build NDK_APPLICATION_MK=<file> --> rebuild, using a specific Application.mk pointed to by the NDK_APPLICATION_MK command-line variable. ndk-build -C <project> --> build the native code for the project path located at <project>. Useful if you don't want to 'cd' to it in your terminal.
(摘自NDK说明文档NDK-BUILD.html)
2、
我们看到上面ndk-build有很多可选参数,那在cocos2dx中,这些参数使用的呢?
我们都知道在2.X版本中,我们都是通过build_native.sh脚本,编译cocos2dx项目,
那么我们怎么通过build_native.sh脚本使用上面的参数呢?
下面是从build_native.sh脚本中摘出来的:
if [[ "$buildexternalsfromsource" ]]; then echo "Building external dependencies from source" "$NDK_ROOT"/ndk-build -C "$APP_ANDROID_ROOT" $* "NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DXTALKINGDATA_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/source" else echo "Using prebuilt externals" "$NDK_ROOT"/ndk-build -C "$APP_ANDROID_ROOT" $* "NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DXTALKINGDATA_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt" fi看下这部分:
"$NDK_ROOT"/ndk-build -C "$APP_ANDROID_ROOT" $* "NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DXTALKINGDATA_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt"
原文:http://blog.csdn.net/tianxiawuzhei/article/details/44589487