返回列表 回复 发帖

win7下搭建cocos2dx-3.2开发环境

本帖最后由 cocox 于 2014-10-17 18:20 编辑

cocos2d-x 是目前比较流行的游戏引擎,为大多游戏开发爱好者所喜爱,
因此,本文的目的在于教导新手如何在win7下建立cocos2dx开发环境,
截止本文,cocos2dx的最新版本为 v3.2rc0版,我将假设您的开发
环境中已包含VS2012/VS2013集成工具(该IDE下载安装比较简单,
没有安装的朋友可以到微软官方下载安装),有了该工具,接下便
开始我们的游戏环境搭建之旅吧...

首先,建立该开发环境需要以下工具:
1.Visual Studio 2012/2013(微软IDE开发工具)
2.Cocos2d-x v3.2rc0版(游戏开发引擎)
3.JAVA JDK(JAVA开发工具包)
4.python工具(用于脚本编译)
5.ADT包(含Android SDK组件和一个内置ADT(Android开发者工具)的Eclipse IDE版本)
6.Android NDK(so和java应用一起打包成apk)7.Apache-ant工具

一.首先到中文官网下载cocos2d-x v3.2rc0版本,
传送门http://cocos2d-x.org/download

下载完毕后,我们直接解压,即可得到主要目录(本文相关软件我全部解压至G:\),
然后进入到G:\cocos2d-x-3.2rc0\build,用VS2012打开cocos2d-win32.vc2012.sln,
如图:


这里需要注意的是,默认平台工具集为v110_xp,如果我们用的是win7平台,请将其改为Visual Studio 2012(v110),


之后,我们将启动项改为CppTest,然后生成解决方案...


编译成功后,我们按下F5, 便可以成功启动,然后看到如下画面:



二.安装配置JAVA JDK
因为我们希望能移植到Android平台,所以JAVA JDK是必须的,这里推荐使用64 bit JDK for windows 64bit。
传送门:http://www.oracle.com/technetwork/java/javase/downloads/index.html

下载完毕后,对其进行安装,本机路径为:G:\Java\jdk1.8.0_05

配置用户环境变量:
1.新建用户变量:
变量名:JAVA_HOME         变量值:G:\Java\jdk1.8.0_05
变量名:CLASSPATH          变量值:.;%JAVA_HOME%\lib;(注意点号)



配置系统环境变量:
2.在系统变量后继续添加:
系统变量名:Path            变量值:;%JAVA_HOME%\bin

到此,环境变量配置完毕。

然后在Dos窗口下输入java -version
(开始->运行->cmd 或 win+R)
若看到如下画面,则表明安装成功:


三.下载ADT包,配置Android SDK环境
ADT包中包含名为Eclipse的IDE开发工具,同时也包含了Android SDK,内置的ADT开发工具其作用为使得
Eclipse能够使用Android SDK组件(相当于一座桥梁),
传送门:http://developer.android.com/sdk/index.html
(可能被墙,本人用了代理服务器顺利进去)

配置用户环境变量:
变量名:ANDROID_SDK         变量值:G:\adt-bundle-windows-x86_64-20140624\sdk\platforms;G:\adt-bundle-windows-x86_64-20140624\sdk\tools;G:\adt-bundle-windows-x86_64-20140624\sdk\platform-tools;
变量名:path                            变量值:%ANDROID_SDK%( 如存在继续添加,记得用分号隔开)

然后在CMD下的DOS窗口中输入adb -h检验是否安装成功。


四.下载并安装python工具
这里的版本为python2.73,
传送门:https://www.python.org/download/releases/2.7.3/
1.下载并安装python2.73。

本机的路径为G:\Python27,

配置用户环境变量:
变量名path                        变量值:G:\Python27(在后面继续添加,记得用分号隔开)

在CMD下的DOS窗口中输入python,如如下图所示便表明安装成功:


五.配置安装Android NDK
先下载并安装Android NDK,推荐使用Windows 64-bit, 本机路径为:G:\android-ndk-r9d,
传送门:http://developer.android.com/tools/sdk/ndk/index.html


配置用户环境变量:
变量名:NDK_ROOT     变量值:G:\android-ndk-r9d
变量名:path                  变量值:%NDK_ROOT% (从已有后面添加,记得用分号隔开)


六.创建生成Cocos2dx工程项目。
在CMD下的DOS窗口中进入G:\cocos2d-x-3.2rc0\tools\cocos2d-console\bin目录中,
然后输入

[cpp] view plaincopy


  • python cocos.py new beyondTest -p com.cocos2dx.org -l cpp -d beyond



用cocos.py脚本创建项目工程,如图所示:


参数说明:
  • test为项目名称
  • -p后面接包名
  • -l后面接开发语言类型,有cpp, lua, js三种类型
  • -d后面接项目存放的目录
然后进入到G:\cocos2d-x-3.2rc0\tools\cocos2d-console\bin\beyond\beyondTest\proj.android目录中,
在DOS下输入python build_native.py对build_native.py脚本进行编译,


七.对Cocos2dx项目用真机进行测试运行。
1.打开Eclipse,设置Android NDK的路径(选择Windows->references->NDK)

(注意:第一次启动Eclipse,会同时出现一个即时对话框,要求设置默认工作区(workspace)。
你可以选择默认设置,也可以按自己的需求设置(我将其设置为G:\Java\workspace))



2.在Project Explorer空白处点击鼠标右键,选择Import...

3.选择Exiting Android Code Into WorkSpace,点击Next。


4.浏览目录为G:\cocos2d-x-3.2rc0\tools\cocos2d-console\bin\beyond\beyondTest\proj.android,
然后点击Finish。


5.刚导入时发现有错误,原因是缺少java的org.cocos2dx.lib,如图:
(Windows->Show View->roblems可显示该界面)



6.我们将G:\cocos2d-x-3.2rc0\cocos\platform\android\java\src目录下的org文件覆盖到
G:\cocos2d-x-3.2rc0\tools\cocos2d-console\bin\beyond\beyondTest\proj.android\src目录下,
然后重新导入beyondTest工程,然后我们可以看到错误消失了:


七.配置ant工具
    1.首先去http://ant.apache.org/bindownload.cgi下载apache-ant-1.9.4-bin.zip
       2.解压后配置环境变量 ANT_ROOT  = c:\apache-ant-1.9.4\bin
       3.配置ANDROID_SDK_ROOT=d:\ForAndroid\android-sdk

真机测试
1.用USB连接上带ANDROID系统的手机,然后鼠标右击该工程,或者选择菜单中的Run,
之后点击Run As->Android Application,进入如下界面(可以看到我的ANDROID版本仍为2.3.4,
但不影响结果^0^),选择后点击Ok,便可以成功在真机上运行了。




最后来张运行成功后的截图:

最近升级到Cocos2d-x3.2正式版,iOS程序编译没任何问题,结果使用cocoscompile -p android编译生成APK程序,结果悲剧了,出现以下错误。

Android NDK: Invalid APP_STL value:c++_static   

Android NDK: Please use one of thefollowing instead:  system stlport_static stlport_static_hardstlport_shared stlport_shared_hard gnustl_static gnustl_shared gabi++_staticgabi++_shared libc++_static libc++_shared none   

make: Entering directory`/game/physics_engine/proj.android'

/sdk/ndk/android-ndk-r9c/build/core/add-application.mk:274:*** Android NDK: Aborting    .  Stop.

make: Leaving directory`/game/physics_engine/proj.android'

Error running command, return code: 2


很显然,这个错误是使用了不正确的STLLibrary,解决方案有如下两个。


方案1:临时方案


修改Application.mk文件,将原来的前4行替换为如下的内容。然后替换就ok


原来的内容如下:

APP_STL := c++_static
NDK_TOOLCHAIN_VERSION=clang

APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11-fsigned-char
APP_LDFLAGS := -latomic


替换后的内容如下:

APP_STL := gnustl_static  
  
APP_CPPFLAGS := -frtti -DCOCOS2D_DEBUG=1 -std=c++11 -Wno-literal-suffix-fsigned-char  


方案2


由于c++_static只有在最新的NDK中才可使用,所以下载最新的NDK就可以了


大家可以从http://developer.android.com/tools/sdk/ndk/index.html下载最新的NDK版本,然后重新设置ndk路径即可。
返回列表