热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

cocos2d-2.0-x-2.0.4安装教程+快捷安装补丁(官方源码包改进建议)

最近刚入手2.0之后的cocos2d-x,还是花了两三天的时间才费尽周折把环境搞定。作为新手来说,配置环境以及编译HelloWorld的过程中总是碰到这样那样的问题,让我忍不住吐槽
最近刚入手2.0之后的cocos2d-x,还是花了两三天的时间才费尽周折把环境搞定。

作为新手来说,配置环境以及编译HelloWorld的过程中总是碰到这样那样的问题,让我忍不住吐槽:官方的源码包怎么不做好一点,方便我们这些新手呢?所以本帖也算是对官方源码包的改进建议。

我先是针对原版安装包写了个冗长的详细安装教程,感觉太啰嗦,不爽;
于是又写了个简短的快捷安装教程,但需要配合使用:我制做的这个快捷安装补丁——
这是我将官方原版 http://cocos2d-x.googlecode.com/files/cocos2d-2.0-x-2.0.4.zip 中的安装脚本做了些修改优化,方便我们这些草根菜鸟快速配置cocos2d-x环境。并且可以保證:编译时不再出莫名其妙的问题。
使用方法:直接用补丁中的文件去覆盖cocos2d-2.0-x-2.0.4原始文件。

顺便提个醒:从2.0版本开始,cocos2d-x不再支持在Android模拟器上运行,只能真机调试。(像类似这些提醒,以及安装操作步骤,完全应该写个说明文档放在官方源码包里。)



上图左侧是原版文件,右侧是我新增的文件&修改过的脚本文件↑
(蓝色为新增文件,红色为修改过的文件)

以下是使用《cocos2d-x快捷安装补丁》搭建Win32+Android完整环境的操作步骤,非常简洁:
假设NDK和cygwin和cocos2d-x分别安装到:
D:\Dev\cygwin
D:\Dev\android-ndk-windows
D:\Dev\cocos2d-x

★1. 先对快捷安装补丁中的文件进行编辑,
 这样预先配置好cocos2d-x的各个环境变量,后面会省很多事。
◆1.1 编辑文件create-android-project.bat
 修改_CYGBIN _ANDROIDTOOLS _NDKROOT三个变量的值:
 set _CYGBIN=D:\Dev\cygwin\bin
 set _ANDROIDTOOLS=D:\Dev\android-sdk-windows\tools
 set _NDKROOT=D:\Dev\android-ndk-windows
◆1.2 搜索到所有的build_native.sh文件,
 编辑这些文件,将文件开头NDK_ROOT和COCOS2DX_ROOT的值改成相应的路径:
 NDK_ROOT=/cygdrive/d/Dev/android-ndk-windows
 COCOS2DX_ROOT=/cygdrive/D/Dev/cocos2d-x
◆1.3 编辑文件template\android\gamemk.sh
 在gamemk.sh文件的开头部分可以看见
 FILE=$1
 NEED_BOX2D=$2
 NEED_CHIPMUNK=$3
 NEED_LUA=$4
 如果希望今后创建的Android项目包含Box2d模块,那么修改为NEED_BOX2D=true
 同理,如果需要包含chipmunk和lua模块,就去修改NEED_CHIPMUNK和NEED_LUA。
◆1.4 编辑文件template\msvc\CCAppWiz.win32\Scripts\1033\default.js
 将文件开头strCocos2dxRoot的值改成相应的路径,注意要使用双斜杠:
 var strCocos2dxRoot = 'D:\\Dev\\cocos2d-x';

★2. 将原版cocos2d-x压缩包解压到D:\Dev\cocos2d-x这个位置,
 用快捷安装补丁中的文件去覆盖D:\Dev\cocos2d-x中的文件。

★3. 先得安装好VS2008。然后双击运行
 D:\Dev\cocos2d-x\build-win32.bat
 稍等几分钟后cocos2d-x目录下会自动生成Debug.win32和Release.win32

★4. 创建并编译自己的Win32工程。
◆4.1 双击运行D:\Dev\cocos2d-x\install-templates-msvc.bat
 运行VS2008,新建项目,在Visual C++下选择Cocos2d-x。
 新建好的Cocos2d-x工程可以立即编译出Debug或Release版本。
◆4.2 不过第一次编译时,会报告缺失dll文件的错误,
 那么分别到D:\Dev\cocos2d-x\Debug.win32和Release.win32这两个文件夹下,
 找到工程所需的这几个dll文件:glew32.dll iconv.dll libcocos2d.dll
 libCocosDenshion.dll libtiff.dll libxml2.dll pthreadVCE2.dll zlib1.dll
 分别复制到当前工程文件夹下的Debug.win32和Release.win32目录中去。
◆4.3 可以将工程下的Resources文件夹中的所有图片文件
 复制到编译生成的Debug.win32和Release.win32目录中去。
 这样随时随地双击Release.win32中的exe程序就可以运行。

★5. 创建并编译自己的Android工程。
◆5.1 先去编辑文件D:\Dev\cocos2d-x\template\android\gamemk.sh
 选择需要添加的模块:Box2d chipmunk lua
 例如需要创建一个包含Box2d模块的项目,那么修改为NEED_BOX2D=true
◆5.1 双击运行D:\Dev\cocos2d-x\create-android-project.bat
 依次输入包名(公司的域名倒写)、工程名、目标的Android系统版本,例如:
 com.company.hellodemo
 HelloDemo
 4
 一个新的工程已被创建在D:\Dev\cocos2d-x\HelloDemo
 可以将这个工程移动到新的位置,例如E:\MyWork\HelloDemo
 也可以将这个工程中的proj.android文件夹提出来,放入上述创建的Win32工程中去。
◆5.2 运行cygwin,输入:
 cd /cygdrive/e/MyWork/HelloDemo/proj.android
 接着输入下列命令开始编译:
 ./build_native.sh
 编译完成之后再将proj.android文件夹导入Eclipse,进而编译得到apk包文件。


〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
※如需更详细冗长的原版安装指导,参见本补丁中的附加文档:
《NDK和cygwin下载安装与编译》《cocos2d-x安装配置与使用》《cocos2d-x异常问题处理》

 

文章来源:http://cocos2d.cocoachina.com/bbs/forum.php?mod=viewthread&tid=9940&extra=page%3D20%26filter%3Dauthor%26orderby%3Ddateline%26orderby%3Ddateline

转载时请保留该链接


推荐阅读
  • Android与JUnit集成测试实践
    本文探讨了如何在Android项目中集成JUnit进行单元测试,并详细介绍了修改AndroidManifest.xml文件以支持测试的方法。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 深入解析WebP图片格式及其应用
    随着互联网技术的发展,无论是PC端还是移动端,图片数据流量占据了很大比重。尤其在高分辨率屏幕普及的背景下,如何在保证图片质量的同时减少文件大小,成为了亟待解决的问题。本文将详细介绍Google推出的WebP图片格式,探讨其在实际项目中的应用及优化策略。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 长期从事ABAP开发工作的专业人士,在面对行业新趋势时,往往需要重新审视自己的发展方向。本文探讨了几位资深专家对ABAP未来走向的看法,以及开发者应如何调整技能以适应新的技术环境。 ... [详细]
  • 使用TabActivity实现Android顶部选项卡功能
    本文介绍如何通过继承TabActivity来创建Android应用中的顶部选项卡。通过简单的步骤,您可以轻松地添加多个选项卡,并实现基本的界面切换功能。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 本文详细介绍了如何搭建一个高可用的MongoDB集群,包括环境准备、用户配置、目录创建、MongoDB安装、配置文件设置、集群组件部署等步骤。特别关注分片、读写分离及负载均衡的实现。 ... [详细]
  • 探索百度WebFE团队打造的强大HTML5上传插件Web Uploader
    本文将详细介绍由百度WebFE团队开发的Web Uploader,这是一款集成了HTML5与Flash技术的上传组件,以其卓越的用户体验和强大的功能著称。 ... [详细]
author-avatar
ZQ我是疯癫小karmenRJ
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有