天天看点

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

  声明:本人参考了《日月之明》和《不能停止的脚步》的博客,自己弄了很久 才搞好的!大致内容和这两人的博客相同,但是大家都知道,由于版本问题,需要一些简单的改动!希望对新人朋友有所帮助!

本人QQ:164453625    乐于交朋友,如看了之后还有不懂的 可以加我QQ,我能帮到你的会帮你!大家也交流交流!

欢迎转载和收藏!

  环境:win32  和  win7  32位环境 

两个系统环境都能配置成功!楼主亲自试验!

  vs : 本人用的是 2010 中文版

  cocos2d-x  2.2.0    和cocos2d想 2.2.1  都行!

  前提条件:vs2010 cocos2dx 配置成功!  这个比较简单,楼主就不多说了!

配置这个环境 !  没有四五个小时那是一定搞不好的,大家要有个心理准备!

好了 ,说了这么多废话,终于开始了!

第一步:安装java jdk

官方网站:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

进去之后点击上面黄色区域按钮,然后下载!

安装的话直接下一步下一步就好!

安装后,配置环境变量:

新建环境变量:JAVA_HOME 值为:D:\Program Files\Java\jdk1.7.0_45(这里路径是你的安装路径哦!别搞错了@!)

新建环境变量:CLASSPATH  值为:.;%JAVA_HOME%\lib;(注意:点号表示当前目录,不能省略)

弄好环境变量测试下弄好没有!

单击“开始”—>“运行”—>输入:cmd命令,在CMD窗口中输入:java -version 

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

如果是像上面这样的话就OK了!

到这里的话就于成功近了一步了哦!是不是该好好高兴一下呢!嘿嘿!

第二步:下载eclipse

官方网址:http://www.eclipse.org/downloads/packages/

随便下一个就好 楼主下的是这个

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

下完了解压就好了!  好吧这一步也完了,是不是很简单!不过后面就是用这个工具哦!

第三步:安装android sdk      和      NDK

官方网址:http://developer.android.com/sdk/index.html

进去后直接下载,还是贴个图吧!

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

点进去:

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

图这么清楚我就不废话了!  下好了解压!

解压之后会看到这个

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

双击运行 SDK Manager

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

出来如上画面,,等下面的那个绿色的好吧!

话说过好一会儿才,当然不排除 网速跟机子很好的人咯!嘿嘿!

完了之后,楼主建议你们 选择android2.2的吧 就选这一个  把上面黄色区域的都勾上 

然后点 Install packages

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

出来如上画面 一次点击Accept License    和 Install

然后哥们  等着吧  慢慢等   不要着急    总会好的 不是么! 中间要是谈出什么对话框什么的 选默认吧!

这个完成之后 

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

看到那两个对勾么   证明你弄好了!

上面是SDK   

----------------------------------------------------------------

NDK------

官网:http://developer.android.com/tools/sdk/ndk/index.html

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

还是和上面一样  黄色区域

下下来解压!

好的先放着  就这样!

这是第几步了  不知道了 

第N步:Cygwin安装

官网:http://www.cygwin.com/

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

黄色区域下下来!

下好之后

双击运行:

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

到这一步   正在看的人注意    楼主强烈建议  

到的我的百度网盘里   去把那个安装文件下下来!  

大小是一个G

当然你可以选择第一项  一直下一步!如果这样的话   安装这个东西  你估计要4到5个小时

楼主是为你们好啊  听我的 吧,不会害你的是不?

我分享的网盘地址如下:(下下来后解压和安装文件放到一个包里)

http://pan.baidu.com/s/1gdHYuX1

下一步之后 会提示你路径   选择减压好的这个包就可以了,一直下一步就好!

安装好了之后

运行cygwin,在弹出的命令行窗口输入:cygcheck -c cygwin命令,

会打印出当前cygwin的版本和运行状态,

如果status是ok的话,则cygwin运行正常。

然后依次输入gcc –v,g++  --version,make –version,gdb –version进行测试,

(注意空格和-)如果都打印出版本信息和一些描述信息,这说明cygwin安装成功了

好吧这一步就算是完了  打开原先下好的  eclipse

 (1)打开Eclipse, 在菜单栏上选择 help->Install New SoftWare

点击 Add按钮,出现如下界面 输入网址: http://dl-ssl.google.com/android/eclipse/ 

名称: Android (这里可以自定义) 点击OK,

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

都选上 点击下一步!

在出来的界面里点击下一步!

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译
cocos2dx 2.2 配置 Android环境 第四部分,交叉编译
cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

选择SKD路径 点OK!!

配置cygwin

在命令行中进入cygwin目录,并执行cygwin.bat,

如果你不是用Administrator账号登录的系统,

那么会在..\cygwin\home\文件夹中生成一个以你的登录名命名的新的文件夹。

修改新生成文件夹中的“.bash_profile ”文件,用UE或editplus等文本编辑器打开,

在最后增加: (e/android-ndk-r8-windows/android-ndk-r8是安装ndk的路径)

NDK_ROOT=/cygdrive/d/android-ndk-r9b

export NDK_ROOT

然后保存关闭。

值得说明的是 在打开的时候  千万不要把格式给转换了!

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

点否哈!!

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

我的路径是我的 你的路径是你的 

不要复制我的路径  

把你的路径选好复制上去

---------------------------------------------------

下面是引用 不能停止的脚步 的博客  做了一点点改动  !!!

第一步:增加android_update.bat

在ant生成apk的时候,会需要知道,你编译的目标是什么版本和src.dir等信息。创建这个工程,就是为了自动更新它。批处理的内容是

android update project -p . -t android-8

该文件建好后,命名为android_update.bat,放在E:\cocos2dx\template\multi-platform-cpp\proj.android

注意,请先确认你的ANDROID_SDK是否安装了对就的版本,android-10是对应的是android2.3,其他的版本请用对应的数字。执行e:\adt-bundle\SDK Manager.exe,如下图所示:

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

这里的数字是19

那么批处理的内容改为

android update project -p . -t android-19

第二步:修改build_native.sh

该文件在E:\cocos2dx\template\multi-platform-cpp\proj.android目录中,因为在执行build_native.sh的时候,会出现的权限的问题,所以在这个脚本中,增加了权限设置,来解决这个问题。

在第67行后面,也就是复制资源的后面增加下面一行

chmod 666 -R "$APP_ANDROID_ROOT"/assets

就可以了。如下图所示

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

第三步,创建工程复制批处理

在cocos2dx的2.2中,已经少了一些批处理来创建工程,现在全部改用python来创建工程。

现在到E:\cocos2dx\tools\project-creator下,创建一个批处理demo.bat,内容如下

python create_project.py -project %~n0% -package org.cocos2dx.lib -language cpp

xcopy ..\..\cocos2dx\platform\android\java\src\* ..\..\projects\%~n0%\proj.android\src

上面批处理的

第一行的意思是,建一个工程为%~n0%的工程,包名是com.android.zdhsoft,使用的语言是cpp。%~n0%在批处理表示的是批处理的文件名,在demo.bat中,%~n0%的值是demo。使用该批处理的好处是,如果建议某一个工程,只有把批处理复制一个,然后重新命名就可以了。如命名为sample.bat,执行后,就可以行到一个sample的cocos2dx工程。

创建的工程在E:\cocos2dx\projects目录中。

         第二行的意思,复制编译andiroid工程需要的java文件。否则编译的时候,会提示找不到对应的类。

第四部分,交叉编译

第一步,确定工程名称,如MyFirst

第二步,到E:\cocos2dx\tools\project-creator目录下,复制demo.bat,并改名为MyFirst.bat

第三步,双击MyFirst.bat生成工程

第四步,到E:\cocos2dx\projects\MyFirst\proj.android目录下,双击android_update.bat

第五步,到桌面的cygwin的快捷方式,进入cygwin模式,如下图

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

第六步:输入下面命令cd /cygdrive/e/cocos2dx/projects/MyFirst/proj.android,进入对应的工程目录这个目录。注:c:在cygwin的目录是/cygdrive/c,其它依此类推。

第七步:输入命令sh build_native.sh,这样就开始编译了 如下图

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

---------------------------------------------------------------------------------------------------------------------

好的 现在该我说话 了

编译完了之后   

到这个目录  D:\cocos2d-x-2.2.1\cocos2dx\platform\android\java\src\org\cocos2dx\lib

把所有的java文件复制到

新建的目录 下   我的路径如下 D:\cocos2d-x-2.2.1\projects\myfirst1\proj.android\src\org\cocos2dx\lib 

每次都要这样做!!

《有会脚本的话  把这个复制的东西,帮我这个批处理文件  感激!!!》 

做好了的话!

打开eclipse    file->  new  ->  project 

选择   andriod  

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

选择Next

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

在上面黄色区域  填上  你的项目Android路径    点击FInish

这里因为我已经添加了   所有是个错误

转开左边的项目  如果你的跟我的一样  那么恭喜你   你也配置成功了 

cocos2dx 2.2 配置 Android环境 第四部分,交叉编译

上面的黄色区域看到了吗?  点击右键  选择  build path  选择  remove  from build path

然后插上手机  手机上选择调试模式     记得先把360连接手机的那个断开  要不然  会出错 

然后右击项目  选择  debug as   -》Android appliaction   等一会儿就会看到你的手机上出现了  

cocos2dx 的经典界面  !! 好的搞定  

手机 不好截图    所以就不上图了

谢谢你们观看我的博客  

如有 不懂 请留言   或则加我QQ

这个博客  蛮长的   难免  会出错  !

如果有错我  请 留言说明  我会第一时间 改过来 

嗯  最后,希望这个博客 能帮到大家吧  以及一些新人朋友吧 !  

谢谢你们咯!!!

哈哈哈   拜拜!

我的第三篇博客结束!!!