windows eclipse c++ cocos2dx 游戏开发环境搭建

来源:互联网 发布:knockout js 编辑:程序博客网 时间:2024/05/21 11:25

这篇文档有些图片,因为贴图太过麻烦这里就不贴了,需要的可以去这里下载。

一,目的:

目的很简单,想发扬一下古人的优良传统,写篇文档记录下来,帮助其他有需要的人快速的达到目的不走弯路,也帮助自己以后回忆,毕竟好记性不如烂笔头。

废话说了很多,现在进入正题。

二,目标:
1.在eclipse中编写c++代码,而且要有代码提示。

2.能够很方便的在eclipse里面查看cocos2dx的源代码。

3.在eclipse里面自动编译有c++代码的android项目并运行和打包。

4.其实还想在eclipse里面实现c++代码的调试,只是这个步骤暂时还没有摸索出来。

三,前提条件:

1.eclipse中有adt和cdt插件(一般现在的adt插件已经集成cdt了)

2.尽量新点的ndk版本(太旧的需要安装cygwin才能进行ndk编译,新的几个版本已经可以在widows中直接编译了)

3.coco2dx源码。

4.应该对android的android.mk文件语法有一定的了解(可选,即使啥也不知道按部就班的来也能配置成功,但是最后还是有所理解,这样才能理解coco2dx的目录结构为什么是这个样子,为什么能够编译成功。这里有篇文章可以参考一下:http://blog.sina.com.cn/s/blog_6bdbc71601010v5x.html)

5.至少安装一个用于eclipse纯c++项目编译的工具,(sygwin,)

四,注意事项:

之所以现在就说注意事项是因为这关系到整个过程能否顺利进行下去。

需要注意的是,用coco2dx提供的脚本生成的android项目是以跨平台为前提的,他的目录结构是为了方便多平台并行开发(不知道我这个理解是否正确,如果错了高人可以指出来),所以,你会发现Classes这个文件夹在android项目外面,但是如果你不是很懂android的ndk编译这一套东西的话,就不要试图去把这个文件夹拷贝到android项目的jni目录下面,也不要拷到别的地方去,这样不但会不利于跨平台开发,还有可能导致编译不过,就维持用脚本生成以后的目录结构就好了。

五,步骤:

1.导入coco2dx的android库(如果你之前已经导入过了就不需要再做这步了)。

也即是\cocos2d-2.0-x-2.0.3\cocos2dx\platform\android\java这个项目。

2.导入你用cocos2dx提供的脚本生成android项目,这里以2dx提供的simplegame例子为例。

也即是cocos2d-2.0-x-2.0.3\samples\SimpleGame\proj.android

导入以后右键这个项目,设置它引用第一步导入的coco2dx项目。如图

3.将android项目转为c++项目,当然转了以后android项目还是android项目,只是可以支持编写c++代码了。

右键simplegame项目,new,Convert to a C/C++ Project(如果看不到这项就点击other,展开c++)

点击Convert to a C/C++ Project会弹出一个对话框,按如下选中,是的这里看到android gcc这一项,但是不要选它,我们不会用到他(因为要用到cygwin的make进行编译)。

接下来我们点击完成以后,我们再次右键simplegame项目,打开Properties,切到C/C++ Build界面,取消Use default build command选项(这里相当于调用cygwin的命令行执行项目里面的build_native.sh脚本进行编译,因此在windows的环境变量中一定要先设置好cygwin的path),并设置如下:

最后点击apply和ok。


4.引入cocos2dx及项目源码。

右键simplegame项目,选择Properties,展开c++ General选择Path and Symbols,点击Includes标签项,选中Assembly,点击add按钮,在弹出对话框中填入如下路径:

你的ndk放置目录\android-ndk-r8c\platforms\android-8\arch-arm\usr\include同时选中下面图中两项

点击ok。

同样的方法把以下两项也添加进来:

你的cocos2dx放置目录\cocos2d-2.0-x-2.0.3\CocosDenshion\include

你的cocos2dx放置目录\cocos2d-2.0-x-2.0.3\cocos2dx\include

切换到Source Location标签,点击Link Folder按钮,如下图,选中后再点击Browse按钮

在弹出的对话框中选择以下路径,然后点击ok:

你的cocos2dx放置目录\cocos2d-2.0-x-2.0.3\samples\SimpleGame\Classes(这里只是举例,实际上这个目录是你用create android project这个脚本生成的android项目里面的Classes文件夹的路径)

同样的方法把coco2dx也引入进来,路径如下:

你的cocos2dx放置目录\cocos2d-2.0-x-2.0.3\cocos2dx

点击Apply按钮保存设置。

把视线重新转到左侧的c++ General项,选中Code Analysis,设置如下图所示,要求一模一样。设置这个的目的是因为eclipse cdt插件对代码解析不够好,很多正确的代码会解析成错误的提示出来,导致无法编译。

最后点击ok。

5.编译c++代码
在c++透视图下面右键点击项目,可以看到有build project和clean project,一般如果,选择build project编译项目。


以后我们就可以在eclipse里面写c++代码了,按照coco2dx跨平台的思想,一些平台无关的代码一定要放在classes下面编写。

六,参考文章:

这篇文章讲了mac电脑上ios xcode和android eclipse配置,在编译器配置上跟我这里不同

http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started

这篇文章讲了android的编译系统,也就是android.mk的语法的东西

http://blog.sina.com.cn/s/blog_6bdbc71601010v5x.html

PS:如果有高人知道怎么在eclipse里面调试c++代码也请不吝赐教了,在这里回帖或者发到我邮箱都可以,邮箱地址:yixiaoqingyuz@163.com