现在的位置: 首页 > 综合 > 正文

在ubuntu系统下cocos2dx移植到android平台

2014年05月23日 ⁄ 综合 ⁄ 共 2677字 ⁄ 字号 评论关闭
1. 序

在网络上搜索cocos2dx移植到android的文章有很多, 本文也是参考根据网络上的文章移植成功的, 下面将本人的移植过程以及移植过程中遇到的问题记录下来以供今后参考和即将移植的新人一个参考: 

       网络上有很多文章都在window平台下移植的。 本人第一次在window上移植的, 安装完cygwin后, 编译cocos2dx的create_android_project.sh提示make guu什么没安装完整, 整了半天没整好。后来改用在ubuntu上移植, 发现在ubuntu上移植还是挺快的, 只是android 平台搭建比较麻烦。闲话少聊 , 切入正题。  

2. 准备工具
以下需要的文件都是基于本地ubuntu 32位下载的, 如果是64位请到相关官网下载:
android-ndk-r8d-linux-x86.tar.bz2 下载地址: http://dl.google.com/android/ndk/android-ndk-r8d-linux-x86.tar.bz2
eclipse-helios http://mirror.bit.edu.cn/eclipse/technology/epp/downloads/release/helios/SR2/eclipse-rcp-helios-SR2-linux-gtk.tar.gz
        jdk-6u37-linux-i586.bin 下载地址 http://download.oracle.com/otn/java/jdk/6u37-b06/jdk-6u37-linux-i586.bin?AuthParam=1357887108_3824c402c2ce80cface9d25c25e971aa
 
3.执行步骤
在ubuntu上搭建android环境网上已有很多文章, 这里不再赘诉.
3.1. 拷贝目录
在home目录下创建game文件夹:   @tsingh#    mkdir game. 然后将下载文件拷贝到该目录下.
3.2. 加压文件
解压cocos2dx文件:  root@tsingh:/home/tsingh/tools/game# unzip cocos2d-2.0-x-2.0.3.zip
解压NDK文件: root@tsingh:/home/tsingh/tools/game# tar -xjvf android-ndk-r8d-linux-x86.tar.bz2
 
3.3 创建Android工程
编辑create_android_project.sh NDK和SDK路径: 
NDK_ROOT_LOCAL="/home/tsingh/tools/game/android-ndk-r8d"
ANDROID_SDK_ROOT_LOCAL="/home/tsingh/tools/game/android-sdk-linux"
执行脚本, 创建android工程: root@tsingh:/home/tsingh/tools/game/cocos2d-2.0-x-2.0.3#
./create-android-project.sh
提示你输入包的名称 
,  项目名称   , 以及指定的target ID.  如果这个过程不出现问题的话, 会在cocos2d-2.0-x-2.0.3目录下生成一个android项目.如图:
3.4 编译build_native.sh文件   进入刚刚生成的项目, 然后既进入pro.android文件夹  root@tsingh:/home/tsingh/tools/game/cocos2d-2.0-x-2.0.3/helloGame/proj.android#
./build_native.sh  如果提示: please define NDK_ROOT  就在提示please define NDK_ROOT的if判断语句前面加上该定义: 
export NDK_ROOT=/home/tsingh/tools/game/android-ndk-r8d  
3.5  编译成功后, 会在libs/armeabi目录下生成libgame.so库文件. 如果看到这个文件的时候说明你已经编译成功了. 
4. 运行android项目
1. 在eclipse中选择创建一个android工程 , 然后选择create project from existing source. 在location选择helloGame项目. 
2. 导入到eclipse工程师, 会报错提示org.cocos2dx.lib.Cocos2dxActivity找不到,  那么我把cocos2dx\platform\android\java\src目录下的所有源文件拷贝到项目中运行
3.  运行结果截图:
5. 总结及要点
1. 编译create-android-project.sh的时候记得配置NDK和SDK的路径
NDK_ROOT_LOCAL="/home/tsingh/tools/game/android-ndk-r8d"
ANDROID_SDK_ROOT_LOCAL="/home/tsingh/tools/game/android-sdk-linux"
2. 编译build_native.sh的时候注意定义NDK_ROOT的路径
please define NDK_ROOT的if判断语句前面加上该定义: export NDK_ROOT=/home/tsingh/tools/game/android-ndk-r8d  
3. 如果在编译build_native.sh文件时候如果提示:  xx行    java not found .  说明你的JDK环境变量配置有问题. 
4. window与ubuntu的共享文件hgfs看不到window目录时需要重新加载下目录:   sudo mount -t vmhgfs .host:/ /mnt/hgfs
6. 参考文章及目录
cocos2dx移植 : http://www.cnblogs.com/freshman45/archive/2011/07/29/cocos2d-x.html
        http://blog.csdn.net/snaillabs/article/details/8220821
jdk环境变量设置: http://forum.ubuntu.org.cn/viewtopic.php?t=183803
 

抱歉!评论已关闭.