不用vs和cygwin!Eclipse+cdt实现cocos2dx跨平台解决方案(Android版)-3

  • 本帖最后由 shielf 于 2012-10-31 19:41 编辑 *

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

3.1
建立C++
工程如果你的Eclipse正确安装了CDT,你应该可以进行下面的操作,否则请参看1.1小节并自行google。启动Eclipse -> File -> New -> Project… -> C/C++ -> C++ Project:669Next >:670选择Empty Project,Toolchains选择Microsoft Visual C++,起个名字叫HelloCpp,Finish。
这样你就得到了一个基于ms vc++编译器的空的C++工程HelloCpp。

3.2
创建cocos2d-x
跨平台目录结构手动的将cocos2d-2.0-x-2.0.3samplesHelloCpp目录下的全部文件夹考到你的这个项目下:671这样你就有了一个跟标准cocos2d-x一样的目录结构。

3.3
加入lib右键点击HelloCpp工程,选择Properties -> C/C++ General -> Paths And Symbols:672右边的Includes标签下Languages应该有3个,不同Eclipse版本可能名字显示不同,无所谓,随便点选其中一个,Add:673Directory里面输入cocos2d-2.0-x-2.0.3cocos2dx所在的路径,当然你也可以在File system里面找。注意下面有两个选项:Add to all configurations和Add to all languages,都勾上。OK:674然后继续Add,用同样的方式添加下面两个目录所在的路径:cocos2d-2.0-x-2.0.3cocos2dxincludecocos2d-2.0-x-2.0.3cocos2dxplatformwin32注意都要勾选那两个选项。Apply -> OK。

3.4
建立Android
工程如果你的Eclipse正确安装了Android SDK和ADT,你应该可以进行下面的操作,否则请参看1.3小节并自行google。选择Eclipse的File -> New -> Project… -> Android -> Android Project from Existing Code:675Next >:676Root Directory里面,选择你worckspace里面,刚才建立的那个C++工程HelloCpp文件夹下面的proj.android。Finish:677

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.3cocos2dxplatformandroidjava所在的路径::678Finish。这样你就有了一个cocos2d-x的Android的lib工程。(顺便说一下,这个工程名字应该叫作libcocos2dx,但是不知道什么原因,我建出来的名字叫java……)

3.6
加入cocos2d-x Android lib右键点击org.cocos2dx.hellocpp.HelloCpp工程,选择Properties -> Android:679如果右下方你的Library列表里有个项目前面有个红叉,选中,Remove。然后Add:680里面的列表会有刚才创建的libcocos2dx(我这里叫做java)lib工程。OK681这个时候org.cocos2dx.hellocpp.HelloCpp工程没有错误了。

3.7
创建你自己的jni Builder如果你正确下载并解压了Android NDK,你应该可以进行下面的操作,否则请参看1.4小节并自行google。右键点击org.cocos2dx.hellocpp.HelloCpp工程,选择Properties -> Builders:682如果你看到右边最上方那个带着蚂蚁图标的New Builder (1),选中,Remove。然后New:683选Program,OK。
Main标签下:Location从Browse File System中选择android-ndk-r8b
dk-build.cmdWorking Directory从Browse Workspace中选择Android 项目org.cocos2dx.hellocpp.HelloCpp684
Refresh标签页下,第一个勾选上:685
Environment标签页下,按NewName填NDK_MODULE_PATHValue填x:xxxcocos2d-2.0-x-2.0.3;x:xxxcocos2d-2.0-x-2.0.3cocos2dxplatform hird_partyandroidprebuilt (其中x:xxx是你cocos2d-2.0-x-2.0.3存放的位置),OK:686
Build Option标签页下,勾选During auto builds和Specify working set of relevant resources:687然后按Specify Resources,在org.cocos2dx.hellocpp.HelloCpp下的jni目录前打勾:688Finish,Apply,OK,OK。

请问楼主,我在3.1步时
在新建C++Project,里面没有看到Microsoft Visual C++,这是杂理呢?

Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
我也报错了

我执行到
3.4 建立Android工程
就无法执行了

多谢楼主指点,帮助很大!

有人按照做做出来的吗?
我是报错了
Error: Cannot run program “make”: ???¨?

:)好东西

强人 学习了:)

我的是不能运行,模拟器启动后,运行时直接黑屏?

官方论坛很冷清,我也要顶楼主

论坛限制发帖数啊,今天先发这点吧,后面的以后再说~

顶顶更健康。。。

3.6的时候,add列表木有刚刚倒进来的lib,怎么破?

Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
我也报错了

我执行到
3.4 建立Android工程
就无法执行了

多谢楼主指点,帮助很大!

强人 学习了:)

官方论坛很冷清,我也要顶楼主

669
670

这些标记是什么意思呀?

没有VS没什么,毕竟有CDT也能在eclipse里面写
但是没有cygwin很多时候是连NDK运行也会出问题的。
这也就是“Error: Cannot run program “make”:“这个错误的原因。
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it. 是需要在系统变量里和eclipse变量里把NDK的路径写到变量中。