`
mmdev
  • 浏览: 12885165 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

(三-----上) 搭建cocos2d-x-android环境 Windows XP3 + Eclipse + NDKR7(或ndkr7b)+COCOS2DX(没有用到cygwin和minigw)

 
阅读更多


2012-04-17更新:

cocos2d-x 0.13版本有些变动,需要用我改写的 ndk-build.cmd 文件进行编译且方法有2种,直接用NKD,脱离Eclipse编译库,第2还是用Eclipse 辅助编译库


批处理下载地址(内有使用说明)


http://download.csdn.net/detail/maojudong/4233381

脱离繁重的Cygwin.NDK编译脱离Cygwin


1. 请将文件放到cocos2d-1.0.1-x-0.13.0-beta目录下面
2. 打开build_android_ndk_tests.bat 文件 修改set NDK_ROOT=D:\Work7\android-ndk-r7c到你的NDK实际路径即可
3. jni/Application.mk 文件中加入 APP_MODULE : = android-4
4. 在jni目录中添加双击此批处理即可编译库文件

注1:0.13版本的cocosw2d-x 搭配 Eclipse 也可以使用这个批处理,不要使用NDK自带的ndk-build.cmd
注2:此批处理可以脱离Eclipse,只用NDK自带的编译器即可,这里只用来编译库,如果要打包到APK还是需要Eclipse的,将刚刚编译的库导入即可

上面讲解了两种方法,自行选择

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
build_android_ndk.bat 需要在开始 --> 运行 CMD 后 运行的批处理
方法有2:

方法1: 运行build_android_ndk.bat -C tests/test.android/jni
方法2:
#cd tests/test.android/jni
#..\..\..\build_android_ndk.bat

效果是一样的

0.11 0.12 0.13 版本都测试通过


脱离繁重的Cygwin(但是使用cocoss2d-x下的create-android-project.bat创建还是需要Cygwin,你可以尝试更改这个文件,让其不依赖Cygwin,我相信能够做到,只是时间问题 ,呵呵)



版本:

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

下面是我的ME600手机的运行截图





说明:本配置过程没有用到Cygwin或是 minigw + msys,完全用的是NDK自带的编译器


2012-04-17更新:

cocos2d-x 0.13版本有些变动,需要用我改写的 ndk-build.cmd 文件进行编译且方法有2种,直接用NKD,脱离Eclipse编译库,第2还是用Eclipse 辅助编译库


批处理下载地址(内有使用说明)


http://download.csdn.net/detail/maojudong/4233381

脱离繁重的Cygwin.NDK编译脱离Cygwin


1. 请将文件放到cocos2d-1.0.1-x-0.13.0-beta目录下面
2. 打开build_android_ndk_tests.bat 文件 修改set NDK_ROOT=D:\Work7\android-ndk-r7c到你的NDK实际路径即可
3. jni/Application.mk 文件中加入 APP_MODULE : = android-4
4. 在jni目录中添加双击此批处理即可编译库文件

注1:0.13版本的cocosw2d-x 搭配 Eclipse 也可以使用这个批处理,不要使用NDK自带的ndk-build.cmd
注2:此批处理可以脱离Eclipse,只用NDK自带的编译器即可,这里只用来编译库,如果要打包到APK还是需要Eclipse的,将刚刚编译的库导入即可

上面讲解了两种方法,自行选择

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
build_android_ndk.bat 需要在开始 --> 运行 CMD 后 运行的批处理
方法有2:

方法1: 运行build_android_ndk.bat -C tests/test.android/jni
方法2:
#cd tests/test.android/jni
#..\..\..\build_android_ndk.bat

效果是一样的

0.11 0.12 0.13 版本都测试通过


脱离繁重的Cygwin(但是使用cocoss2d-x下的create-android-project.bat创建还是需要Cygwin,你可以尝试更改这个文件,让其不依赖Cygwin,我相信能够做到,只是时间问题 ,呵呵)



版本:

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

下面是我的ME600手机的运行截图





说明:本配置过程没有用到Cygwin或是 minigw + msys,完全用的是NDK自带的编译器


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics