Are you sure your NDK_MODULE_PATH variable is properly defined?
STEP1: MIND:
明确NDK_MODULE_PATH概念http://blog.csdn.net/penguu9/article/details/9788709
爆出来的原因:
Android.mk引用了一个模块,cocos2dx模块,而NDK没有找到它,所以报了这个错,
之前的版本是直接包含cocos2dx模块的Android.mk的,所以不会报错
而这里使用了import,我们也可以使用之前版本的方法来包含它,但貌似import比之前的方法要更好一些
错误信息提示我们,可以通过设置NDK_MODULE_PATH环境变量,这里很有可能设置错误
一般,一个Android.mk包含一个或多个模块,当你要import cocos2dx模块时,
他会在这个路径下% NDK_MODULE_PATHcocos2dx寻找Android.mk文件
之前的版本是直接包含cocos2dx模块的Android.mk的,所以不会报错
而这里使用了import,我们也可以使用之前版本的方法来包含它,但貌似import比之前的方法要更好一些
错误信息提示我们,可以通过设置NDK_MODULE_PATH环境变量,这里很有可能设置错误
一般,一个Android.mk包含一个或多个模块,当你要import cocos2dx模块时,
他会在这个路径下% NDK_MODULE_PATHcocos2dx寻找Android.mk文件
STEP: ACTION
个人编译在cygwin上用$NDK/ndk-build编译,分别尝试一下几种方式.
第一种方式:Say NO
Android.mk引用了一个模块,cocos2dx模块,而NDK没有找到它,所以报了这个错,之前的版本是直接包含cocos2dx模块的Android.mk的,所以不会报错而这里使用了import,
我们也可以使用之前版本的方法来包含它,但貌似import比之前的方法要更好一些错误信息提示我们,可以通过设置NDK_MODULE_PATH环境变量,这里很有可能设置错误。
这里设置:D:developmentcocos2d-2.0-x-2.0.3;D:developmentcocos2d-2.0-x-2.0.3cocos2dxplatform hird_partyandroidprebuilt
![](file:///C:/Users/xupeng/AppData/Local/Temp/enhtmlclip/Image.png)
第二种方式:say NO!
![](http://my.csdn.net/uploads/201207/26/1343269522_2662.png)
添加NDK_MODULE_PATH变量,注意要写两个路径,用分号分开
D:SDKcocos2d-2.0-rc0a-x-2.0;D:SDKcocos2d-2.0-rc0a-x-2.0cocos2dxplatform hird_partyandroidprebuilt
因为cocos2dx还import了其他几个module,第二个路径制定了第三方的module,设置完就可以进行编译了
D:SDKcocos2d-2.0-rc0a-x-2.0;D:SDKcocos2d-2.0-rc0a-x-2.0cocos2dxplatform hird_partyandroidprebuilt
因为cocos2dx还import了其他几个module,第二个路径制定了第三方的module,设置完就可以进行编译了
第三种方式:say NO!
NDK_MODULE_PATH的设置与格式
NDK_MODULE_PATH 是一个环境变量,不是android.mk中设置的变量。
NDK_MODULE_PATH多个路径用冒号分割。不是分号!且整个字符串中间不能有空格。格式不正确也会报错上面的错误的。
设置NDK_MODULE_PATH的方法
1、在系统环境里手动添加这个环境变量,
2、在build_native.sh中 运行ndk-build之前使用export命令定义环境变量NDK_MODULE_PATH。
如:export NDK_MODULE_PATH=路径1:路径2:路径3
3、直接将NDK_MODULE_PATH=路径1:路径2 加到 ndk-build命令的参数后面。ndk-build的参数最终会直接传给make.
如:$NDK_ROOT_LOCAL/ndk-build -C $HELLOWORLD_ROOT NDK_MODULE_PATH=路径1:路径2
(命令 make aaa=213 //在编译makefile之前将aaa当作环境变量设置为213.)
第四种方式:say NO!
还可以在android.mk中设置NDK_MODULE_PATH
在import语句之前加入,
$(call import-add-path,$(LOCAL_PATH)/platform/third_party/android/prebuilt)
将一个新的路径加入NDK_MODULE_PATH变量。
第五种方式:say Yes:
直接在cygwin下来执行build_native.sh它,提示缺少NDK_ROOT,那就配置一下呗。
# options
NDK_ROOT=你的NDK path;
buildexternalsfromsource=
建议先尝试第五种,若真不行,再在前四种的不可能中发现新发现吧。