COCOS2DX-1.0.1 配置手册

转自:http://cdn.verydemo.com/demo_c134_i2506.html

 

1.       引言

略……

一切需要的软件及插件版本号以笔者使用为准,其它版本号的软件及插件不保证有效。文件下载地址在2012-1-19确认有效,不保证因各种原因导致下载地址失效。

开发平台操作系统为win32(WindowsXP、WindowsVista、Windows7)

2.       cocos2d-x Win32环境配置

2.1 win32开发环境配置

2.1.1 Visual Studio 2008

安装VisualStudio2008,默认安装即可,如果是自定义安装,VisualC++组件应选中。

2.1.2 cocos2d-x

1. 下载cocos2d-x引擎最新版

官方下载地址为:http://code.google.com/p/cocos2d-x/downloads/list

(当前使用版本为cocos2d-1.0.1-x-0.10.0.zip)

2.将cocos2d-1.0.1-x-0.10.0.zip解压缩至硬盘任意目录(建议D:\Work7\cocos2d-1.0.1-x-0.10.0\, 因为现在wophone的开发环境必须安装至此, 以下以此为例)

3. 如果想查看引擎源代码,可以在.\cocos2dx\proj.win32目录下找到代码配置文件。

2.1.3 (可选)Visual Assist X

用来提高VisualStudio2008的工作效率, 可以安装此工具。

安装支持VS2008版本的任意一版,无需配置。本软件是收费软件,需要注册。

技巧:如果不想让VAX对注释中的拼写进行校正(即去掉单词下面的波浪线提示),可以选择Visual Assist X Option, 进行如下配置:

2.1.4 (可选)doxygen

安装工具 doxygen 1.7.6.1 Win32版本(本例用, 本工具为开源软件)

运行 doxygen, 选择 file->open

找到 "D:\Work7\cocos2d-1.0.1-x-0.10.0\doxygen\" 目录下的doxygen.cocos2d-x文件, 并打开

(此文件为cocos2d-x代码的 doxygen 配置文档)

然后选择 run 选项卡, 点击 rundoxygen 按钮开始生成.

生成完成后, 在 "D:\Work7\cocos2d-1.0.1-x-0.10.0\doxygen\" 目录下, 可以看到帮助文件夹

通过修改doxygen的一些设置, 可以很方便的生成各种标准的帮助文档.

2.2 Win32 可执行文件生成过程

1. 运行cocos2d-x 解压目录根目录下面的build-win32.bat(..\..\build-win32.bat), 生成debug库文件, 执行成功后, 库文件保存在.\Debug.win32 下.

2. 运行..\..\install-templates-msvc.bat, 将项目模板加入VS2008模板库。

3. 将.\Debug.win32目录下的所有dll文件拷贝至Windows\system32\

4. 打开VS2008 IDE, 选择VisualC++工程. 新建一个项目, 可以看到新加入的cocos2d模板

选择第一项, cocos2d-win32 applivation, 为项目任意命名(因为这一版无论怎样命名, 生成的工程文件都是helloword), 然后在向导栏选择默认值, 直接点finish.进入项目设计界面.

5. 依次选择 工具->选项->项目和解决方案->VC++目录

在包含文件栏, 加入下列项目

D:\Work7\cocos2d-1.0.1-x-0.10.0\cocos2dx

D:\Work7\cocos2d-1.0.1-x-0.10.0\cocos2dx\platform

D:\Work7\cocos2d-1.0.1-x-0.10.0\cocos2dx\include

D:\Work7\cocos2d-1.0.1-x-0.10.0\CocosDenshion\include

D:\Work7\cocos2d-1.0.1-x-0.10.0\cocos2dx\platform\third_party\win32\OGLES

D:\Work7\cocos2d-1.0.1-x-0.10.0

D:\Work7\cocos2d-1.0.1-x-0.10.0\chipmunk\include\chipmunk

D:\Work7\cocos2d-1.0.1-x-0.10.0\cocos2dx\platform\third_party\win32

 

在库文件栏, 加入

D:\Work7\cocos2d-1.0.1-x-0.10.0\Debug.win32

(引用的是该目录下的所有Lib文件)

(发布时用release目录下的!!)

6. 点击VS9 IDE的启动调试按钮, 正常情况可以编译通过, 并显示 helloworld页面

看到这个页面, 表示win32环境配置成功.

2.3 常见问题总汇

1. 错误:

"error PRJ0019: 某个工具从以下位置返回了错误代码"(及类似错误)

"引用了一个%$#$#@.."

处理:

include 设置有误.

dll没有放在正确位置

2. 错误:

"LNK1000: Internal error during IncrBuildImage"

"....上一个增量链接没有生成它;正在执行完全链接..."

处理:

这是微软的一个漏洞, 下载KB948127补丁, 安装即可.

如果不能正常安装, 也可以把VS9中的增量编译关掉:

项目名处点右键, 依次选择->属性->配置属性->链接器->常规->启用增量链接(否)

以后再遇上此类问题, 可以尝试再次编译或者清理后重新生成.

3. 错误:

"....error LNK2019: 无法解析的外部符号...."

处理:

lib没有添加依赖

工程 点右键->属性->配置属性->链接器->输入附加依赖项 填入以下lib文件

libcocos2d.lib libgles_cm.lib libBox2d.lib libchipmunk.lib libcurl_imp.lib libCocosDenshion.lib

libjpeg.lib libpng.lib liblua.lib libxml2.lib libEGL.lib libzlib.lib libzlib.lib libiconv.lib

pthreadVCE2.lib

(根据实际使用情况填写)

而附加包含目录那里, 这样填写就可以了:

3     cocos2d-x Android 环境配置

3.1 android开发环境配置

Android开发需要用到JDK,做程序的都知道……

3.1.1 Eclipse 3.7.1

下载地址:http://www.eclipse.org/downloads/packages/eclipse-classic-371/indigosr1

选择对应的连接进行下载(32位操作系统或64位操作系统)

eclipse为全绿色开发工具,直接解压缩后即可使用。

3.1.2 Eclipse ADT插件

该插件是 Eclipse平台下用来开发 Android 应用程序的插件。打开eclipse3.7.1选择 Help-> Software Updates,在Work with栏填入https://dl-ssl.google.com/android/eclipse/ 等待eclipse搜索完成后,会在主视窗中列出ADT插件下载项目,全部选择,点击Next按钮。

再次点选Next按钮后出现软件许可窗口,需要勾选同意,然后点击Finish按钮eclipse会开始下载ADT插件。完成后重新启动可以在File->New->Project菜单下找到Android Project证明ADT更新成功

3.1.3 Eclipse CDT插件

安装CDT插件的目的为令eclipse可以识别由C/C++开发的代码,对其进行编译。

CDT可以从http://www.eclipse.org/cdt/downloads.php 下载到,对应eclipse3.7.1的CDT插件版本为CDT8.0.1。

       下载完成后,启动eclipse,选择Help-> Software Updates,点击ADD按钮选择archive,选择下载好的CDT插件zip文件(cdt-master-8.0.1.zip)然后OK确认,勾选全部安装项目,点击next按钮eclipse会开始安装。同样,在安装过程中有一次同意软件协议选项的勾选。

完成后eclipse会要求重启软件,OK即可。重启eclipse后选择New->Projec会发现eclipse已经支持C/C++项目。

3.1.4 AndroidSDK

Android SDK可以从 http://developer.android.com/sdk/index.html 下载到,截止到2012-1-19最新版本为r16,请选择对应windows操作系统位数进行下载。

下载完成后解压到任意路径即可,解压后路径内不包含任何SDK,还需要运行

SDK Manager.exe进行SDK包下载。

笔者没有下载最新的SDK,是通过r10版本的SDK Manager进行更新的。将r10版本的

SDK Manager.exe更新至r15,即可看到新发布的SDK包。更新过程中笔者碰到了一个目录被占用的错误,解决办法为:打开androidSDK所在路径的temp文件夹将tools_r15-windows.zip解压缩,将tools_r15-windows中的tools文件夹覆盖至androidSDK根目录,选择“No”即可,选择需要的包进行下载安装(2.1、2.2、2.3版本的SDK包均有更新)。

3.1.5 AndroidNDK

使用NDK的目的为将C/C++编写的代码生成能在arm上运行的*.so文件。由android的java代码来调用。

AndroidNDK可以从http://developer.android.com/sdk/ndk/index.html 进行下载,截止2012-1-19最新版本为r7。

3.1.6 Cygwin

Cygwin为Linux模拟环境,因使用NDK生成本地*.so本地库需要用到交叉编译环境,而交叉编译需要在linux系统下才能完成。

Cygwin可以从http://cygwin.com/install.html下载到。(可以选择下载但不安装选项来创建“本地安装包”

安装时,在Cygwin默认安装配置没有安装gcc编译器,我们必须用到的Devel类中的四个组件包,如果嫌找起来过于麻烦,可将Devel类从Default改为Install全部安装也可,四个组件包为:

1.     binutils组件

2.    gcc组件

3.    gcc-mingw组件

4.    gdb组件

5.    make组件

安装完成后,运行Cygwin.bat,输入make -v 和 gcc -v 如果能找的,则表示安装成功。

3.2 Android可执行文件生成过程

3.2.1 前期准备

       1.代码文件:*.h及*.cpp注意代码文件中不能含有unicode编码,必须使用ascii码。

       2. 资源文件:工程使用的资源

2.2.2 生成Android空工程

1.         进入cocos2d-x目录,找到create-android-project.bat文件,使用UE等编辑工具打开进行编辑,修改如下项目:

1)        cygwin目录

找到set _CYGBIN= 在等号后面填入本机cygwin/bin目录,如:C:\cygwin\bin

2)         <cygwin的目录>

找到set _ANDROIDTOOLS= 在等号后面填入本机Android/tools目录,如:

D:\Android\android-sdk-windows\tools

3)        AndroidNDK目录

找到set _NDKROOT= 在等号后面填入本机NDK目录,如:

D:\Android\android-ndk-r7

修改完成后保存关闭。

2.         进入cocos2d-x目录中的cocos2dx目录,找到Android.mk文件,使用UE等编辑工具得开进行编辑,编辑此文件的目的为使用cocos2d支持NDKr7版本。

在文件的最末尾处找到LOCAL_CFLAGS := -DUSE_FILE32API,将其修改为

LOCAL_CFLAGS := -DUSE_FILE32API -DGL_GLEXT_PROTOTYPES=1,保存关闭。

include $(BUILD_SHARED_LIBRARY)?

3.         运行cocos2d-x下的create-android-profect.bat文件,

首先输入项目生成目录,至少是双层目录,如:com.MyGame。

回车后会要求输入工程名,最好和目录名一致,如:MyGame。

回车后会要求选择AndroidSDK的版本号,一般选择2.1以上版本,响应id是4

回车后会在cocos2d-x目录中生成一个工程目录,工程目录中含有android、Classes、Resource三个子目录。

3.2.2 交叉编译so文件

1.         将准备好的代码文件拷贝到工程下的Classes目录;资源文件拷贝到工程下的Resource目录。打开Classes目录找到Android.mk,使用编辑工具打开,在LOCAL_SRC_FILES :=

填入要编译的cpp文件,保存后关闭。如:

LOCAL_SRC_FILES := AppDelegate.cpp \

                   GameOverScene.cpp \

                   Joystick.cpp \

                   TerribleGameScene.cpp

2.         打开cygwin,输入工程路径下的Android文件夹的完整路径,如:cd d:/makeapk/MyGame/Android。然后运行build_native.sh文件,具体输入为:./build_native.sh

3.         编译过程中,如果有错误发生请参考后章节的排错方法进行解决。

4.         补充一点,每次打开cygwin并输入完整路径是很麻烦的事情,可以通过下面的方法自动执行一些命令:

用记事本打开cygwin根目录下的.\etc\bash.bashrc文件,在文件末尾加入欲输入的命令,例如

cd e:

cd APKMAKE/ko/android

./build_native.sh

保存后,下次运行cygwin时,这几行命令将自动被执行。

3.2.3 生成android系统可用的apk文件

1. 打开eclipse,选择New->AndroidProfect创建新的android工程。

2. 选择通过已存在的代码创建工程,浏览工程目录下的android文件夹,eclipse会自动填写项目名,Finish即可。

5.      右键点击创建工程是输入的工程名对应的java文件,选择Run As->Run Configurations进入运行设置。在弹出对话框中双击Android Application选项,在Android选项卡选择好工程点击Run按钮即可。由于真机可用的*.apk文件将生成于<工程路径>/Android/bin路径下。

3.3 常见问题汇总

1. awk过期问题。

在进行编译so文件时,AndroidNDK r7版本有一个 awk过期问题,进入NDK目录下的prebuilt\windows\bin文件夹删除awk.exe即可。如删除后出现HOST_AWK未定义情况,请前去http://ftp.gnu.org/gnu/gawk/ 下载gawk,下载完成后配置一个环境变量,名字是HOST_AWK,值是指向gawk.exe的完整路径名(如:c:/gawk/gawk.exe)。

2. unicode编码问题。

必须保证所有头文件与代码文件均由ascii码编写,使用unicode将导致无法正确编译代码。

3. android.mk编辑问题。

确保所有要编译的文件都填写到了工程路径下的android.mk文件中,如未填写会造成数据类型及函数未定义等编译错误。

 
 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值