android cdt插件,不用vs和cygwin!Eclipse+cdt实现cocos2dx跨平台解决方案(Android版)(转载)...

准备安装  cdt,sdk ,adt ndk

1.1Eclipse+CDT

首先确保你的Eclipse正确安装了CDT插件,这样你才能编辑和创建C++工程,有关Eclipse+CDT的环境配置,请自行google。

版本……不知道有没有影响,我的Eclipse是3.7 Indigo,CDT是8.0.2。

1.2Cocos2d-x

这个……必须的。

官网下载,建议cocos2d-2.0-x-2.0.3,这样稍后的例子你的会跟本文介绍的一样。

1.3Android SDK / ADT

既然想用eclipse,应该是想做Android平台吧,那么请正确安装Android SDK和ADT。

只要开发Android项目,无论是否使用cocos2d-x引擎这都是必需的。也请自行google。

1.4Android NDK

这是Android的C++交叉编译器,如果要做Android版本也是必须的。官网下载,r8或以上版本。

//

安装完毕后,按照以下流程进行

三、Eclipse + Cocos2d-x

终于到了最关键的一章,也许你会发现,原来这么简单——甚至比使用vs还要简单。当然,除了一些需要手动操作的部分之外。

3.1建立C++工程

如果你的Eclipse正确安装了CDT,你应该可以进行下面的操作,否则请参看1.1小节并自行google。

启动Eclipse -> File -> New -> Project… -> C/C++ -> C++ Project:

1935297u7u2pndyou2y6y5.jpg

Next >:

193549em97lv727tb0zbdd.jpg

选择Empty Project,Toolchains选择Microsoft Visual C++,起个名字叫HelloCpp,Finish。

这样你就得到了一个基于ms vc++编译器的空的C++工程HelloCpp。

3.2创建cocos2d-x跨平台目录结构

手动的将\cocos2d-2.0-x-2.0.3\samples\HelloCpp目录下的全部文件夹考到你的这个项目下:

193607ndzexn8mfwk32hxd.jpg

这样你就有了一个跟标准cocos2d-x一样的目录结构。

3.3加入lib

右键点击HelloCpp工程,选择Properties -> C/C++ General -> Paths And Symbols:

193623xgfv6vvxzbfvj6ds.jpg

右边的Includes标签下Languages应该有3个,不同Eclipse版本可能名字显示不同,无所谓,随便点选其中一个,Add:

193635lj8bp97utfmhypps.jpg

Directory里面输入\cocos2d-2.0-x-2.0.3\cocos2dx所在的路径,当然你也可以在File system里面找。

注意下面有两个选项:Add to all configurations和Add to all languages,都勾上。OK:

193653rq1n00njer33033q.jpg

然后继续Add,用同样的方式添加下面两个目录所在的路径:

\cocos2d-2.0-x-2.0.3\cocos2dx\include

\cocos2d-2.0-x-2.0.3\cocos2dx\platform\win32

注意都要勾选那两个选项。Apply -> OK。

3.4建立Android工程

如果你的Eclipse正确安装了Android SDK和ADT,你应该可以进行下面的操作,否则请参看1.3小节并自行google。

选择Eclipse的File -> New -> Project… -> Android -> Android Project from Existing Code:

193719a7zsda22z0i1xiad.jpg

Next >:

1937333z6m6kvc6qwulxyw.jpg

Root Directory里面,选择你worckspace里面,刚才建立的那个C++工程HelloCpp文件夹下面的proj.android。Finish:

193755zlr042tl472tv7el.jpg

3.5建立cocos2d-x Android lib工程

上一节建立的工程会显示有错误,原因是没有导入cocos2d-x的lib。

再次选择Eclipse的File -> New -> Project… -> Android -> Android Project from Existing Code,这一次在Root Directory里面,选择\cocos2d-2.0-x-2.0.3\cocos2dx\platform\android\java所在的路径::

193816zx46hyggk0gk6yhj.jpg

Finish。

这样你就有了一个cocos2d-x的Android的lib工程。

(顺便说一下,这个工程名字应该叫作libcocos2dx,但是不知道什么原因,我建出来的名字叫java……)

3.6加入cocos2d-x Android lib

右键点击org.cocos2dx.hellocpp.HelloCpp工程,选择Properties -> Android:

19383748i747dipxyy8gdc.jpg

如果右下方你的Library列表里有个项目前面有个红叉,选中,Remove。然后Add:

1938563po1rgrslo3rxsp1.jpg

里面的列表会有刚才创建的libcocos2dx(我这里叫做java)lib工程。OK

193909d441sb7zbsfse2b0.jpg

这个时候org.cocos2dx.hellocpp.HelloCpp工程没有错误了。

3.7创建你自己的jni Builder

如果你正确下载并解压了Android NDK,你应该可以进行下面的操作,否则请参看1.4小节并自行google。

右键点击org.cocos2dx.hellocpp.HelloCpp工程,选择Properties -> Builders:

193923jbcy3y4xax33lhmc.jpg

如果你看到右边最上方那个带着蚂蚁图标的New Builder (1),选中,Remove。然后New:

193937d9ciafz66zzi9w3s.jpg

选Program,OK。

Main标签下:

Location从Browse File System中选择\android-ndk-r8b\ndk-build.cmd

Working Directory从Browse Workspace中选择Android 项目org.cocos2dx.hellocpp.HelloCpp

193955cb1f1tlyl0r1a1m1.jpg

Refresh标签页下,第一个勾选上:

194009us0xr8op0s5xub6b.jpg

Environment标签页下,按New

Name填NDK_MODULE_PATH

Value填

x:\xxx\cocos2d-2.0-x-2.0.3;x:\xxx\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\android\prebuilt (其中x:\xxx是你cocos2d-2.0-x-2.0.3存放的位置),OK:

194023kx1xcak4my4oz4d9.jpg

Build Option标签页下,勾选During auto builds和Specify working set of relevant resources:

19403992uzc2528dm5879u.jpg

然后按Specify Resources,在org.cocos2dx.hellocpp.HelloCpp下的jni目录前打勾:

194101939ycd9ycuc379l9.jpg

Finish,Apply,OK,OK。

四、如何使用

如果你顺利的进行了第三章所述的所有操作,你的跨平台环境已经完成了。但如果你仍然不知道该如何编写cocos2d-x代码并在Android设备上运行和调试,请继续向下看。

4.1编写C++代码

经过上一章的操作之后,你的Eclipse里应该有了3个新的工程:

HelloCpp: 这是一个C++工程

libcocos2dx(我的叫做java): 这是一个cocos2dx的Android版本lib工程

org.cocos2dx.hellocpp.HelloCpp: 这是一个Android工程

212729vcetb4zzbtbtbqer.jpg

遵照cocos2d-x的跨平台解决方案,我们应该在HelloCpp工程的Classes下编写C++程序,HelloCpp工程自带了两个类:AppDelegate和HelloWorldScene。你可以增加更多你自己的类。

4.2运行Android项目

如果你已经在HelloCpp工程中编写了一些C++程序而急于想在Android设备上看到效果的话,你不应该编译和运行HelloCpp工程,而应该直接运行org.cocos2dx.hellocpp.HelloCpp工程。

但在运行之前,仍然需要我们手动的将HelloCpp 工程下的\HelloCpp\Resources目录下的所有资源文件都考到org.cocos2dx.hellocpp.HelloCpp工程的assets文件夹下。(或许将来有谁帮忙写个windows下的批处理来做这件事?)

在本例中,就是iphone和iphonehd文件夹:

21275881af1jc4q2fzq312.jpg

然后选中org.cocos2dx.hellocpp.HelloCpp工程,点Eclipse的Project-> Build Project:

212812gqf5kt3jbtwt5tz5.jpg

第一次build的时候会很慢,因为要把整个cocos2d-x的lib都编译一遍,以后就不会这么慢了。编译完成的话在Console窗口应该能看到下面的输出:

212825ontefj1k2i9s3k9k.jpg

这个时候libhellocpp.so已经生成了,接下来就可以在你的Android设备上运行你的org.cocos2dx.hellocpp.HelloCpp工程了!

(特别注意的一点是:好像模拟器对于openGLES的支持有问题,如果用模拟器运行这个例子的话会报错)

4.3win32版本(可选项)

你也许还记得1.5小节中的可选项:安装vs2008。如果你进行了这一步,那么你还可以使用vc++的编译器在win32环境下编译和运行你的HelloCpp工程。

据说cocos2dx自带的模拟器也挺不错,不过因为我没有做这一步,所以我也不知道实际效果是什么,而且你也不要指望我会在本文中给你攻略。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值