cocos2d-x 开发环境搭建

1.在mac上配置cocos2d-x开发环境,xcode&eclispe

http://www.cnblogs.com/xiaodao/archive/2013/01/08/2850751.html

解压缩cocos2d-x压缩包,在终端中运行install-templates-xcode.sh安装项目模板,如果已经安装了旧版本,旧版本将被覆盖。如果希望保留旧版本,可修改install-templates-xcode.sh内的安装路径,再执行。

2.升级cocos2dx2.0.4到2.1.1

发现在cocos2dx2.0.4在android平台下对CCFileUtils::sharedFileUtils()->fullPathFromRelativePath的实现几乎是空,2.1.1有所改进,于是决定升级。

主要步骤有:替换解压后的cocos2dx目录,注意修改其中的几个文件中的环境变量值,还有其中的工程不要删除了。

/Users/gzty1/Library/Developer/Xcode/Templates目录下的cocos2d-x模板文件夹可以删除掉,然后重新安装xcode-cocos2dx模板。

xcode工程的Buildsettigng\ProprocessonMacros下要定义预处理宏:CC_TARGET_OS_IPHONE,否则编译报#error"Cannotrecognizethetargetplatform;areyoutargetinganunsupportedplatform?"

工程下的libs目录中替换为最新的三个目录:cocos2dx,CocosDenshion,extensions

重新编译工程,会发现一些文件被删除了,CCPoint竟然不再继承CCObject,开始为什么要继承。

在win系统中还要再招行build-win32.bat,可能要执行很久。

2.android版本的cocos2dx项目工程大致总结:

在eclipse中使用的jni调用生成的libgame.so,工程中的Activity继承的是Cocos2dxActivity,而这些java文件是由/cocos2dx/cocos2dx/platform/android中提供的;

android版本的cocos2dx项目工程需要由cocos2dx中的命令行来生成;

jni/hellocpp/main.cpp和上层目录中的Classes中的工程c++代码文件一块被编译成libgame.so;

java代码加载了libgame.so,然后只是调用了main.cpp中的函数;

jni目录中的.mk文件只和生成so有关系;

添加cdt,也许可以实现编辑c++代码文件,甚至编译出so,但运行断点调试c++文件更不知道怎么搞了;

待继续研究

http://stackoverflow.com/questions/10273807/tips-of-how-to-programming-using-cocos2d-x-on-eclipse-for-android

http://blog.plicatibu.com/how-to-debug-cocos2d-x-and-java-code-using-eclipse/

http://blog.plicatibu.com/developing-with-cocos2d-x-for-android-on-linux/

待继续研究在eclipse中Run同时也编译C++资源

http://www.cr173.com/html/17612_1.html

3.在eclipse中Run同时也编译C++资源,即会自动调用工程中的uild_native.sh

在eclipse中选中项目名右键点击New=>Other,

在弹出对话框中选择C/C++=>ConverttoaC/C++Proejct(AddsC/C++Nature)

在接下来一屏中选择C++Project以及ProjectType为Makefileproject,Toolchains为Other

打开项目属性页面,c/c++build中,修改Buildcommand为

bash${workspace_loc:/工程文件夹名称}/build_native.shNDK_DEBUG=1V=1

编译,在控制台中"pleasedefineNDK_ROOT",需要在Environment选项卡中添加NDK_ROOT环境变量。

点击Run,会看到Console窗口会有编译的输出,编译成功.运行成功.

相关推荐