在windows下用cygwin和eclipse搭建cocos2dx的android开发环境
在windows下用cygwin和eclipse搭建cocos2dx(2.1.4)的android开发环境,2013-8-1更新。
一、准备工作
需要下载和安装以下内容,请根据自己的操作系统选择x86和x64(我的是64位win7,我就拿64位说事)
1、jdk-7u25-windows-x64.exe(下载完后直接安装,一直下一步)
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
2、adt-bundle-windows-x86_64-20130717.zip(下载完直接解压,解压目录不要带中文和空格,里面包含了带adt插件的eclipse和最新版的android sdk)
https://dl.google.com/android/adt/adt-bundle-windows-x86_64-20130717.zip
3、android-ndk-r8e-windows-x86_64.zip(下载完直接解压,解压目录不要带中文和空格)
http://dl.google.com/android/ndk/android-ndk-r8e-windows-x86_64.zip
4、setup-x86_64.exe(安装cygwin就看下面的图文吧)
http://cygwin.com/setup-x86_64.exe
1)
2)
3)这个目录你随意填吧,这是下载包目录,以后重新安装可以在前面第一步选择install from local directory
4)
5)选择163的应该快一些
6)
7)
8)然后下一步下一步,狂等好久直到安装完毕。
二、设置环境变量
1、设置NDK_ROOT
2、设置Path
编辑Path,在后面追加4个环境变量,以;号隔开(别忘了给前面的加上;),4个分别是android的sdk的platform-tools,android的sdk的tools,cygwin的bin,上面添加的NDK_ROOT
C:\Work\adt-bundle-windows-x86_64-20130717\sdk\platform-tools;C:\Work\adt-bundle-windows-x86_64-20130717\sdk\tools;C:\cygwin64\bin;%NDK_ROOT%
三、编译程序
1、打开eclipse,选择一个workspace目录,随便选。
2、导入cocos2dx的HelloCpp工程,File->New->Project->Android->Android Project from Existing Code->Next->Browse->你的cocos2dx的目录/samples/Cpp/HelloCpp/proj.android->Finish
3、编译代码,Project->Build Project
4、如果前面都没问题的话就能编译出xxx.so(不过往往会有问题,那直接看下面的常见问题)
5、让程序跑到我们的android手机上(你电脑上需要有安装过手机的驱动程序,或者豌豆荚,手机360,或者QQ手机助手)。右键工程Run as->Run Configurations->选择Always prompt to pick device(总是提示选择设备)->Run
6、弹出一个对话框,选择你的手机,GO。
常见问题:
1、问题:Problem里出现错误:Cocos2dxActivity cannot be resolved to a type
解决方法:重新设置cocos2dx的java代码目录。右键工程,Build Path->Link Source->Browse->你的cocos2dx的目录/cocos2d/platform/android/java/src,然后把Folder name改成其他的,别叫src就行。
2、Console里出现错误error: format not a string literal and no format arguments,这说明你用的是ndk版本是r9
解决方法1:改用ndk-r8e
解决方法2:修改报错的那个源代码所在目录的Android.mk文件搜索LOCAL_CFLAGS,如果已经有了就再后面加上 -w,如果没有那就直接加一行 LOCAL_CFLAGS := -w
如果有不对的地方或者不明白的地方email我:blue-1986@hotmail.com。一起学习,一起进步。
最新文章
- Atitit 图像处理 调用opencv 通过java  api   attilax总结
- Cheatsheet: 2016 11.01 ~ 11.30
- HTTP协议详解--转载http://blog.csdn.net/gueter/article/details/1524447
- No.014 Longest Common Prefix
- 今天踩过的坑——structs和phpmyadmin
- 和iPhone有关的视图控制器:UIViewController、UITabBarController、UINavigationController及其混合用法
- Android SDK 更新失败
- js 实现音乐播放
- 用JSTL简化Java Web开发
- windows汇编环境配置
- Support Annotation Library使用详解
- tomcat 控制台中文乱码问题
- java 项目打jar包,用cmd运行,并且编写运行脚本
- [转载]JS中 map, filter, some, every, forEach, for in, for of 用法总结
- Java中十个常见的违规编码
- Spring框架之演示JDBC的模板类
- Silverlight或WPF动态绑定图片路径问题,不用Converter完美解决
- ArrayList源码中EMPTY_ELEMENTDATA和DEFAULTCAPACITY_EMPTY_ELEMENTDATA的区别
- 关于VSTS自动Build报错问题之Microsoft.Net.Compilers
- C# Winform下一个热插拔的MIS/MRP/ERP框架13(窗体基类)
热门文章
- 【HDU 4925】BUPT 2015 newbie practice #2 div2-C-HDU 4925 Apple Tree
- 从TP、FP、TN、FN到ROC曲线、miss rate、行人检测评估
- POJ2437 Muddy roads
- CODEVS1995 || TYVJ1863 黑魔法师之门
- 内部类访问局部变量的时候,为什么变量必须加上final修饰
- OAuth2.0认证和授权原理
- WINDOWS渗透与提权总结(1)
- struts2 + ajax + json的结合使用,实例讲解
- DOS中如何删除文件夹
- 新浪微博XSS攻击源代码下载(2012.06.28_sina_XSS.txt)