android平台下的cocos2d-x环境配置经历

本文详细介绍在Windows和Ubuntu环境下配置cocos2d-x及Android开发环境的过程,包括ADT、JDK、NDK等工具的使用技巧,解决常见编译问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.windows7

工具:

ADT、JDK、NDK、cocos2d-x、cygwin

cygwin 的安装我自己也没搞太懂,给位只可以去google了 ,这个一定要装,  NDK编译的时候要用到这个东西。

先在window下配置android开发环境直接下google提供的ADT集成编译环境,配置JDK,下载DNK R9

在eclipse下配置NDK路径:

在 Eclipse 中,打开“window”->“preferences”出现如下对话框。

 如下所示输入 NDK 安装路径(在此我们假定您已将 NDK 下载至了 Windows* 上的 d:\android-ndk-r8b),单击“应用”,然后单击“确定”。 



我们现在已准备好向 Eclipse 中的该项目添加 NDK build 支持。 在 Eclipse 中,右键单击 hello-jni 项目 (com.example.hellojni.HelloJni) -> Android 工具 -> Add Native 支持 -> 完成。



目前就可以导入NDK中的例子程序编译了。run as android application......

但是我在windows下发现编译兼容X86的so文件时会出现找不到头文件的情况. 还有在jni中要编译的源码中添加了stdlib.h头文件后会发现找不到memory.h的头文件

coocs2d-x 0n windows 

cocos2d-x 下载解压。windows下编译可以安装vs其他的没有试过。我安装的vs2010 。

再下一步是直接运行目录下面的build-win32.bat 执行完之后会在Debug.win32文件夹下面生存我们开发需要的库。(网上抄的实际作用还没弄懂,不过有几个可以再win下运行的exe文件时确实存在的)


我下了几个版本实验,有的版本直接执行会编译失败,不过没关系。可以找到cocos2d-win32.vc2010.sln 这个文件直接导入到vs解决方案里面去生成解决方案。

基本可以认为cocos2d 在window开发配置,可以开发在windows上东西了,cocos2d-x的用处当然不是为了搞这货,还要想办法和上面的android开发环境结合,搞好移植。


cocos2d-x移植到android

接下来就是 给eclipse下导入一个cocos2d-x下的例子程序,路径cocos2d-x 主目录下samples\Cpp\HelloCpp\proj.android  就是一个android工程,File->new->project出现对话框,


创建samples\Cpp\HelloCpp\proj.android 工程就可以了.run 发现各种头文件找不到...伤心了  换个ubuntu系统重新开始配。



2.ubuntu10.04

这会跑在虚拟机上,ADT、JDK、NDK、cocos2d-x。

ADT和NDK配置和window是基本一样,JDk配置可以百度,本来想给个链接的发现找不到了,不过我保存文本了,下次发表个文章。

环境安装好后,跑一个helloJNI . 尝试在JNI目录下的源文件中添加stdlib.h,没有出现头文件找不到的情况。


NDK设置环境变量  添加 expert NDK_ROOT = [NDK 绝对路径]在 ~/.bashrc最后一行.

如果是10.04想要链接adb还需要配置USB. 

----> lsusb命令查看手机连接信息  

Bus 002 Device 005: ID 0e0f:0008 VMware, Inc. 
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 005: ID 17ef:75b5 Lenovo 
Bus 001 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

我的是虚拟机,信息有点多。不够我连接的手机是LENOVO的很明显就是

Bus 001 Device 005: ID 17ef:75b5 Lenovo

在android的官网上source.android.com找到环境配置的页面

SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="<username>"

新建文件/etc/udev/rules.d/51-android.rules 文件在里面添加

SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="<username>"

设置如下2项位对应 的值

ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff",


我在ubuntu12.04上也测试了,可以adb可以直接链接USB。我官网下这个版本跑虚拟机,每次安装了android源码编译环境后,重启就进步了系统,提示要按大写字母进行其他操作,但是操蛋的发现虚拟机没有起来,不知道怎么输入大写字母,最后没办法换到10.04上去了.


make-all-linux-project.sh执行这个玩意,说是用途和build-win32.bat 一样的。但是悲剧的发现在ubuntu12.04上运行很好可以编译通过。不过运行一个生成的可执行例子程序会有一一些异常退出。在ubuntu10.04上编译出错,找不到有一些常量应该是少了什么库文件,这个正在研究。不过在ubuntu10.04上讲cocos2d-x的例子代码导入到eclipse,移植到android的时候特别顺利; 在ubuntu12.04上编译android apk则运行时强制退出。


creat_android_project用来创建android项目的,不过需要将里面的DNK_ROOT_LOCAL和SDK路径设置正确。





 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值