win7+android studio+cocos2dx平台搭建.docx
《win7+android studio+cocos2dx平台搭建.docx》由会员分享,可在线阅读,更多相关《win7+android studio+cocos2dx平台搭建.docx(12页珍藏版)》请在冰豆网上搜索。
win7+androidstudio+cocos2dx平台搭建
参考:
1.配置JDK
∙JDK下载地址:
本人的系统是Win764位版,但安装的是JDK7,WindowsX86版。
假设安装目录在:
C:
\ProgramFiles(x86)\Java\jdk1.7.0_21;当然也可以是其他地方
∙设置环境变量:
JAVA_HOME=C:
\ProgramFiles(x86)\Java\jdk1.7.0_21
CLASSPATH=.;%JAVA_HOME%\lib;
Path增加%JAVA_HOME%\bin;
设置完后打开cmd,输入java-version
如果出现下面提示,表明环境变量设置成功:
C:
\Users\arlin>java-version
javaversion"1.7.0_21"
Java(TM)SERuntimeEnvironment(build1.7.0_21-b11)
JavaHotSpot(TM)ClientVM(build23.21-b01,mixedmode,sharing)
2.下载AndroidSDK
Google为Android开发者提供了ADT(AndroidDeveloperTools),里面包含了SDK和Eclipse。
下载地址是:
可以选择32位或64位版本,我选择的是32位版的,把它解压到一个目录,我这里是:
D:
\Android\sdk
∙设置环境变量:
新建系统变量
变量名:
ANDROID_SDK_ROOT
变量值:
D:
\Android\sdk
Path增加
%ANDROID_SDK_ROOT%\tools;%ANDROID_SDK_ROOT%\platform-tools;
打开命令提示符(管理员),输入adb,输入android-h
如果内容显示如下则配置成功
3.下载AndroidNDK
下载地址是:
配置环境.
新建系统变量
变量名:
NDK_ROOT
变量值:
D:
\Android\android-ndk-r10e
Path添加%NDK_ROOT%;
更新SDK
打开D:
\Android\sdk目录下SDKManager.exe
由于谷歌被墙,需要翻墙才能更新,介绍个不翻墙的方法,进行如下设置,设置后更新Tools和Extras到最新(否则可能会导致编译通不过),更新需要的AndroidAPI。
4.下载ANT
ANT是为了自动构建Android程序用。
下载地址是:
http:
//ant.apache.org/bindownload.cgi
配置环境.
新建系统变量
变量名:
ANT_ROOT
变量值:
D:
\Android\apache-ant-1.9.6
Path添加%ANT_ROOT%\bin;
5.下载Python
∙原来cocos2dx在不同平台下必须用不同的脚本来创建和构建工程,3.0以后都统一用python了,所以Windows下需要安装python环境:
下载地址:
https:
//www.python.org/
原来下载了最新的版本,使用setup.py的时候发现有语法错误,所以最好使用2.7.x版本,亲测过没有问题
∙配置环境变量:
安装时可以选择添加path环境变量,如果没有添加我们只能自己设置一下,假设我的Python安装在:
d:
\Python27\
把这个路径加到path环境变量中,当我们在cmd下输入python,出现下面字样,就说明环境变量设置正确了:
C:
\Users\arlin>python
Python2.7.3(default,Apr102012,23:
31:
26)[MSCv.150032bit(Intel)]onwin32
Type"help","copyright","credits"or"license"formoreinformation.
>>>
cocos2d-x下载与配置
1.下载cocos2d-x
目前最新版本是3.0RC,下载地址是:
下载完解压到一个地方,我这里:
f:
\cocos2dx\cocos2d-x-3.0rc0\
2.设置环境变量
cc需要下面几个环境变量,用于后面的新建工程,构建工程等:
∙COCOS_CONSOLE_ROOT:
cocos控制台路径,控制台用于新建,构建,发行工程,添加系统环境变量。
变量名:
COCOS_CONSOLE_ROOT
变量值:
D:
\cocos2d-x\cocos2d-x-3.7.1\tools\cocos2d-console
Path添加%COCOS_CONSOLE_ROOT%
∙NDK_ROOT:
NDK根目录
∙ANDROID_SDK_ROOT:
SDK根目录
∙ANT_ROOT:
ANT根目录
这几个环境变量是通过cocos2d-x根目录下的setup.py来配置的,我们启动cmd,运行setup.py:
F:
\cocos2dx\cocos2d-x-3.0rc0>setup.py
此时脚本需要我们提供NDK,SDK,ANT的路径,我们根据之前放的路径输入就是了,整个命令过程如下:
Settingupcocos2d-x...
->AddingCOCOS2D_CONSOLE_ROOTenvironmentvariable...OK
->Added:
COCOS_CONSOLE_ROOT=F:
\cocos2dx\cocos2d-x-3.0rc0\tools/cocos2d-cons
ole/bin
->LookingforNDK_ROOTenvrironmentvariable...NOTFOUND
Pleaseenteritspath(orpressEntertoskip):
d:
\adt-bundle-windows-x8
6\android-ndk-r8e
ADDED
--Added:
NDK_ROOT=d:
\adt-bundle-windows-x86\android-ndk-r8e
->LookingforANDROID_SDK_ROOTenvrironmentvariable...NOTFOUND
Pleaseenteritspath(orpressEntertoskip):
D:
\adt-bundle-windows-x8
6\sdk
ADDED
->Added:
ANDROID_SDK_ROOT=D:
\adt-bundle-windows-x86\sdk
->LookingforANT_ROOTenvrironmentvariable...NOTFOUND
Pleaseenteritspath(orpressEntertoskip):
d:
\adt-bundle-windows-x8
6\apache-ant-1.9.3\bin
ADDED
->Added:
ANT_ROOT= d:
\adt-bundle-windows-x86\apache-ant-1.9.3\bin
Setupsuccessfull:
COCOS_CONSOLE_ROOTwasaddedintoregistry
NDK_ROOTwasaddedintoregistry
ANDROID_SDK_ROOTwasaddedintoregistry
ANT_ROOTwasaddedintoregistry
Pleaserestarttheterminalorrestartcomputertomakeaddedsystemvariablest
akeeffect
命令最后提示我们重启终端或者重启系统,以让这些环境变量生效,一般我们关闭cmd和资源浏览器就行了,如果后面遇到环境变量找不到的错误,直接重启系统试试吧。
要测试环境变量是否生效,重新打开cmd,输入下面命令查看,正常应该是这样:
F:
\cocos2dx\cocos2d-x-3.0rc0>setNDK_ROOT
NDK_ROOT=d:
\adt-bundle-windows-x86\android-ndk-r8e
F:
\cocos2dx\cocos2d-x-3.0rc0>setANT_ROOT
ANT_ROOT=d:
\adt-bundle-windows-x86\apache-ant-1.9.3\bin
F:
\cocos2dx\cocos2d-x-3.0rc0>setANDROID_SDK_ROOT
ANDROID_SDK_ROOT=D:
\adt-bundle-windows-x86\sdk
F:
\cocos2dx\cocos2d-x-3.0rc0>setCOCOS_CONSOLE_ROOT
COCOS_CONSOLE_ROOT=F:
\cocos2dx\cocos2d-x-3.0rc0\tools/cocos2d-console/bin
新建和构建工程
1.新建工程
我们要用tools\cocos2d-console这个工具来新建工程,这个工具提供了下面几个功能:
∙new 创建一个新的工程
∙compile 编译当前工程,生成二进制文件,个人觉得写为build更贴切一些。
∙deploy 发布程序到一个平台
∙run 编译和发布,和运行程序
我们现在只用到new,让我们看看new提供了哪些参数,打到cmd,输入:
cocosnew--help
得到下面帮助:
usage:
cocosnew[-h][-pPACKAGE_NAME]-l{cpp,lua,js}[-dDIRECTORY]
[-tTEMPLATE_NAME][--no-native]
[PROJECT_NAME]
创建一个新工程
必要参数:
PROJECT_NAME 工程名
可选参数:
-h,--help 显示帮助信息
-pPACKAGE_NAME,--packagePACKAGE_NAME
设置包名,如com.colin.mbgame
-l{cpp,lua,js},--language{cpp,lua,js}
使用的主要语言,可以是:
[cpp|lua|js]
-dDIRECTORY,--directoryDIRECTORY
工程所在的目录
-tTEMPLATE_NAME,--templateTEMPLATE_NAME
要创建的工程模板名
lua/js工程参数:
--no-native Nonativesupport.
现在我们在cmd中输入:
F:
\cocos2dx>cocosnewmygame1-pcom.colin.mbgame-lcpp-df:
\cocos2dx\mbgame
得到下面输出:
F:
\cocos2dx>pythonF:
\cocos2dx\cocos2d-x-3.0rc0\tools\cocos2d-console\bin\/cocos.py
newmygame1-pcom.colin.mbgame-lcpp-df:
\cocos2dx\mbgame
Runingcommand:
new
>Copytemplateintof:
\cocos2dx\mbgame\mygame1
>Copyingcocos2d-xfiles...
>Renameprojectnamefrom'HelloCpp'to'mygame1'
>Replacetheprojectnamefrom'HelloCpp'to'mygame1'
>Replacetheprojectpackagenamefrom'org.cocos2dx.hellocpp'to'com.colin.mbgame'
这表明我们已经成功创建一个工程,到f:
\cocos2dx\mbgame\看看,工程目录结构如下:
--
--
--
--
--
--
--
--
--.cocos-project.json
--CMakeLists.txt
可以看到各种平台下的工程都创建出来了,同时它把cocos2d整个框架都拷贝过来了,这种好坏就见仁见智了,
2.构建Android工程
同时是用到cocos2d-console,这里要用的是compile这个命令,在cmd输入下面查看帮助:
f:
\cocos2dx\mbgame\mygame1>cocoscompile--help
usage:
cocoscompile[-h][-sSRC_DIR][-q][-pPLATFORM][-mMODE][-jJOBS]
[--apANDROID_PLATFORM][--source-map]
把当前工程编译为二进制
可选参数:
-h,--help 显示帮助信息
-sSRC_DIR,--srcSRC_DIR
工程根目录,比如上面应该是f:
\cocos2dx\mbgame\mygame1
如果不设,就为当前目录(cmd定位到的那个目录)
-q,--quiet lessoutput
-pPLATFORM,--platformPLATFORM
选择一个平台android|ios|mac|web|win32|linux
-mMODE,--modeMODE 编译模式debug|release,默认为debug.
-jJOBS,--jobsJOBS 半行编译,如果你有4核,可以设为4。
AndroidOptions:
--apANDROID_PLATFORM
指定SDK版本?
没试过,不敢枉下定论,保留英文:
parameterforandroid-update.Withouttheparameter,the
scriptjustbuilddynamiclibraryforproject.Valid
android-platformare:
[10|11|12|13|14|15|16|17|18|19]
WebOptions:
--source-map Enablesource-map
现在我们打开命令提示符:
进入目录F:
\cocos2dx\mbgame\mygame1\proj.android-studio
输入命令:
F:
\cocos2dx\mbgame\mygame1\proj.android-studio>cocoscompile-pandroid--android-studio
等待编译成功
3.AndroidStudio打开项目
启动Andoridstudio,File->Open找到项目路径下proj.android-studio.iml打开项目
F:
\cocos2dx\mbgame\mygame1\proj.android-studio\proj.android-studio.iml
注:
打开androidstudio项目用Open,导入非as项目则用Importproject
导入项目参考
Androidsdk版本设置,File->ProjectStructure...选择项目,设置sdk版本
3.AndroidStudio运行项目
模拟器运行,可参考下面两个博客配置Genymotion模拟器
实机运行,手机连接电脑启用usb调试模式
Run->Editconfigurations...->TargetDevice选择USBdevice
然后点运行按钮
4.AndroidStudio运行问题
dlopenfailed:
cannotlocatesymbol"srand"referencedby"libcocos2dcpp.so"...
导致原因项目建立未下载androidsdk19,ndk版本为r10e,在19平台真机运行出现很抱歉,
“libcoocs2dx”已停止运行
解决办法,下载更新SDK19,新建项目重新编译。
网上解决办法,
1.Application.mk添加代码APP_PLATFORM:
=android-19未解决,添加后编译失败
2.NDK版本退回到r9d,未验证,不过r9d对c++11支持没有r10e好
新建js项目
Cocosnew项目名-ljs-pweb