Cocos2d-x VS2012 HelloCpp调试
2013-09-29 18:42
239 查看
注意,这篇文章并非基于任何移动设备,而是完完全全基于Windows,面向Desktop调试。
在XCode上开发项目;
在iOS设备或者iOS模拟器上调试;
在Android设备上调试;
重复上面的过程。
在Eclipse上开发Android项目;
在Android设备或者Android模拟器上调试;
使用OS X操作系统;
在iOS设备或者iOS模拟器上调试;
重复上面的过程。
我找了一些关于Eclipse+NDK调试C++代码的文章,发现好像有一点点麻烦。所以我或许可以借用MS Visual Studio来基于Desktop调试C++代码,正常后再去Eclipse调试?
当然,我依然可以用Eclipse作为主IDE来基于Desktop调试C++代码,然后在合适的时候调用NDK来调试。
无论使用VS还是用Eclipse来作为主要的IDE,都能够大幅降低在移动设备或者移动设备模拟器上花费的调试时间。当然,与移动设备紧密联系的功能(例如重力感应,多点触摸),还是必须在设备上调试的。
既然cocos2d-x提供了win32的sample,那么还是用VS2012来试试把。就让我这个从没用过VS的人来尝尝这个神级IDE的味道。
在VS2012上开发Desktop项目;
在Eclipse中建立Android项目,引用VS2012项目中的C++源码;
在Android设备或者Android模拟器上调试;
使用OS X操作系统;
在XCode中建立iOS项目,引用VS2012项目中的C++源码;
在iOs设备或者iOS模拟器上调试;
重复上面的过程。
那么,这就开始吧!
Visual Studio 2012 Express (这个版本是免费的,直接在微软网站注册就可以得到注册码)
用VS打开
原因是由于原始项目引用的某些项目不存在,主要是引用的
使用VS2012打开
下面是部分生成过程中的输出信息,视电脑配置情况时间应该从几分钟到十几分钟不等。
生成完毕之后,
VS的确是赞啊……居然都不用配置,而且看一眼就会用了……
当然,也可以不将这两个项目放在同一个解决方案中。但这样就需要把libcocos2d生成的dll和lib文件复制到libCocosDenshion的Debug.win32目录,否则会导致libCocosDenshion无法成功编译。
将HelloCpp项目设置成启动项目(右键即可搞定):
有兴趣的话,还可以单独设置一下HelloCpp项目的输出路径,否则也会生成到
按下“本地Windows调试器”按钮,结果就是酱紫了:
不过不知道为何,我使用Release生成的exe文件不能直接双击显示,但我已经很满足了。至少我第一次使用VS的经历,还是蛮圆满的
【原文:http://zengrong.net/post/1884.htm】
一、Cocos2d-X 跨平台开发工作流
根据这几天的学习,看起来Cocos2d-X跨平台开发的工作流是这样的:
使用OS X操作系统;在XCode上开发项目;
在iOS设备或者iOS模拟器上调试;
在Android设备上调试;
重复上面的过程。
当然,对于一个讨厌在Apple那套审美疲劳的桌面环境下工作的人来说,工作流可以是这样的:
使用Windows或者Linux操作系统;在Eclipse上开发Android项目;
在Android设备或者Android模拟器上调试;
使用OS X操作系统;
在iOS设备或者iOS模拟器上调试;
重复上面的过程。
我找了一些关于Eclipse+NDK调试C++代码的文章,发现好像有一点点麻烦。所以我或许可以借用MS Visual Studio来基于Desktop调试C++代码,正常后再去Eclipse调试?
当然,我依然可以用Eclipse作为主IDE来基于Desktop调试C++代码,然后在合适的时候调用NDK来调试。
无论使用VS还是用Eclipse来作为主要的IDE,都能够大幅降低在移动设备或者移动设备模拟器上花费的调试时间。当然,与移动设备紧密联系的功能(例如重力感应,多点触摸),还是必须在设备上调试的。
既然cocos2d-x提供了win32的sample,那么还是用VS2012来试试把。就让我这个从没用过VS的人来尝尝这个神级IDE的味道。
于是,我的工作流可能就变成了这样(只是可能):
使用Windows操作系统;在VS2012上开发Desktop项目;
在Eclipse中建立Android项目,引用VS2012项目中的C++源码;
在Android设备或者Android模拟器上调试;
使用OS X操作系统;
在XCode中建立iOS项目,引用VS2012项目中的C++源码;
在iOs设备或者iOS模拟器上调试;
重复上面的过程。
那么,这就开始吧!
二、我的环境
Cocos2d-x-2.1.4 安装路径:D:\cocos2d-x\cocos2d-x-2.1.4Visual Studio 2012 Express (这个版本是免费的,直接在微软网站注册就可以得到注册码)
三、 调试流程
1. 项目文件”"已被重命名或者不在解决方案中
用VS打开
D:\cocos2d-x\cocos2d-x-2.1.4\samples\Cpp\HelloCpp\proj.win32项目之后,试图编译,就出现了这个错误。
原因是由于原始项目引用的某些项目不存在,主要是引用的
libcocos2d和
libCocosDenshion两个库不存在。删掉它们就不会报错了,可以在下图所示的地方找到它们:
2. 编译libcocos2d库
当然,上面的项目依然是无法编译的,因为Cocos2d-X库还没有编译。使用VS2012打开
D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\proj.win32项目,然后生成它。
下面是部分生成过程中的输出信息,视电脑配置情况时间应该从几分钟到十几分钟不等。
1>------ 已启动生成: 项目: libcocos2d, 配置: Debug Win32 ------ 1> cocos2d.cpp 1> CCScheduler.cpp 1> CCDirector.cpp 1> CCConfiguration.cpp 1> CCCamera.cpp 1> CCScriptSupport.cpp 1> CCTextFieldTTF.cpp 1> CCIMEDispatcher.cpp 1> CCKeypadDispatcher.cpp 1> CCKeypadDelegate.cpp 1> CCTouchHandler.cpp 1> CCTouchDispatcher.cpp 1> CCTouch.cpp 1> CCTMXXMLParser.cpp 1> CCTMXTiledMap.cpp 1> CCTMXObjectGroup.cpp 1> CCTMXLayer.cpp 1> CCTileMapAtlas.cpp 1> CCParallaxNode.cpp 1> CCTexturePVR.cpp 1> 正在生成代码... 1> 正在编译... ………… 1> cocos2d.vcxproj -> D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\proj.win32\Debug.win32\libcocos2d.dll ========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========
生成完毕之后,
D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\proj.win32\Debug.win32目录下会出现一堆dll、lib、obj文件。
VS的确是赞啊……居然都不用配置,而且看一眼就会用了……
3. 编译libCocosDension库
直接把D:\cocos2d-x\cocos2d-x-2.1.4\CocosDenshion\proj.win32这个项目添加到刚才 libcocos2d 解决方案,然后再生成
libCocosDenshion库,在默认情况下,生成的文件也会集中在
D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\proj.win32\Debug.win32目录中。
当然,也可以不将这两个项目放在同一个解决方案中。但这样就需要把libcocos2d生成的dll和lib文件复制到libCocosDenshion的Debug.win32目录,否则会导致libCocosDenshion无法成功编译。
4. 编译HelloCpp项目
用上面同样的方法将HelloCpp项目也加入到libcocos2d解决方案。然后设置依赖项和生成顺序:将HelloCpp项目设置成启动项目(右键即可搞定):
有兴趣的话,还可以单独设置一下HelloCpp项目的输出路径,否则也会生成到
D:\cocos2d-x\cocos2d-x-2.1.4\cocos2dx\proj.win32\Debug.win32目录中。
按下“本地Windows调试器”按钮,结果就是酱紫了:
不过不知道为何,我使用Release生成的exe文件不能直接双击显示,但我已经很满足了。至少我第一次使用VS的经历,还是蛮圆满的
【原文:http://zengrong.net/post/1884.htm】
相关文章推荐
- Cocos2d-x建工程时避免copy文件夹和库
- win7下搭建cocos2d-x环境
- cocos2d-x CCCallFunc系列函数的应用
- Cocos2d-x加Box2D制作弹弓类游戏(第一部分)
- cocos2d的抛物线动作
- 主流HTML5游戏框架的分析和对比(Construct2、ImpactJS、CreateJS、Cocos2d-html5……) .
- cocos2d-x的一些宏定义
- cocos2dx-2.2.0孤狼优化整合版安装视频
- Cocos2dx 2.2.0 孤狼优化整合版V1.0(64位)
- Cocos2dx 2.2.0 孤狼优化整合版V1.0(32位)
- Cocos2dx 2.1.5 (2.2.0) 离线 API 手册
- Cocos2dx 2.1.5 (2.1.4) 离线 API 手册
- 初次安装cocos2dx所遇到的问题以及解决办法
- cocos2d-x编译出错
- 使用eclipse调试cocos2d-x C++ 代码(编写+真机调试,放弃VS)
- 谈一谈Cocos2d-x中的某些“大小”
- 【cocos2d-x入门实战】环境配置、交叉编译及安卓项目的生成
- 【cocos2d-x入门实战】微信飞机大战之十五:跨平台移植和广告植入
- cocos2dx cceditbox使用注意事项
- 使用node.js中加载cocos2d-html5