(三) 搭建cocos2d-x-android环境 Windows XP3 + Eclipse + NDKR7+COCOS2DX(没有用到cygwin和minigw)
原文传送门:http://blog.csdn.net/maojudong/article/details/7261986
在Windows XP3下搭建cocos2d-x-android开发环境(整理)
版本:
Windows XP3
JDK1.6
Eclipse 3.7.1 (需要C++插件CDT)
ADT 16.0.1
NDK7 (或是NDKR7B)
cocos2d-1.0.1-x-0.11.0.zip(目前最新版)
注意:本教程没有用到minigw +msys,也没有用到cygwin ,如果用到的是NDK R6B 或是以前的版本,则需要安装cygwin(或是minigw + msys)
前提条件:假设已经成功安装了JDK + Eclipse + CDT + ADT
下面讲解如何在Eclipse中配置NDK ,运行cocos2d-x 自带的 test 工程
目录:
Step1. 下载 android-ndk-r7-windows.zip并解压
Step2. 下载cocos2d-x,并解压
Step3. Eclipse导入cocos2d-x test项目
Step4. Eclipse中配置NDK编译环境
Step5. 编译Android 项目
安装步骤:
Step1. 下载 android-ndk-r7-windows.zip并解压
下载地址:
http://dl.google.com/android/ndk/android-ndk-r7-windows.zip
下载完成后,将其解压到电脑的任何目录中,例如:
Step2. 下载cocos2d-x,并解压
下载地址:
http://cocos2d-x.googlecode.com/files/cocos2d-1.0.1-x-0.11.0.Zip
Step3. Eclipse导入cocos2d-x test项目
打开Eclipse
依次点击File – New – Project… AndroidProject
选择“Create Project from existing Source”
如下图所示,找到test.android 目录
点击Next
选择Android 2.1版本,这里直接点击Next ,或是Finish就创建完成了
Step 4. Eclipse中 配置NDK编译环境
首先选择TestDemos项目,然后选择菜单中的Project – Properties
选择Bilders – New -- Program
打开后,进行如下的设置:
Location:一定要选择ndk-build.cmd 命令
Working Directory:选择TestDemo
下面选择Refresh ,配置如下:
越过Envirment ,直接点击Build Options,配置如下图所示:
设置完成后,点击OK
Eclipse 会自动的进行编译,耐心等待一会,下面是Eclipse开始自动进行编译的过程
(注意编译过程中有个小问题)
编译过程中的问题:
解决方法:
将android-ndk-r7\sources\cxx-stl\gnu-libstdc++\libs\armeabi\libgnustl_static.a 文件手动的copy到cocos2d-1.0.1-x-0.11.0\tests\test.android\obj\local\armeabi目录下
以上问题其实是Google NDK R7版本的bug,会在下一版本中更改( NDKR7B版本已经更改了这个bug,所以在NDKR7B上的话就不需要这一步了 )
http://code.google.com/p/android/issues/detail?id=22268
copy过去后执行下Project –-clean 动作,系统又会自动的进行编译了,等待一点时间后,库文件就会编译完成
至此,cocos2d-x库文件就编译完成了
看到网友的反馈,说是找不到assets资源或是黑屏现象
原因是:android下的assets目录没有任何的资源文件,所以需要我们手动的将cocos2d-1.0.1-x-0.11.0\tests\Res 下的资源 复制到 cocos2d-1.0.1-x-0.11.0\tests\test.android\assets 目录中
复制完成后,还需要删除Images\test_image_rgba4444.pvr.gz 文件
Step5. 编译Android 项目
连接Android手机
依次点击 Run as…Android Application
下面是我的小米手机的运行截图
说明:本配置过程没有用到Cygwin或是 minigw + msys,完全用的是NDK自带的编译器