送给刚刚開始学cocos2d-x引擎 移植Android的同学
刚刚開始学cocos2-x,不过依照教程把已经安了一般Android的开发环境的eclipse又一次升级到安装好cdt和ndk就花了我几十小时,差点都要放弃了。
參考博客 http://blog.csdn.net/b1boy/article/details/14645277
说说大概的过程:
下载ndk插件,ndk包,cdt插件。最開始我依照书上的下载了cocos2d-x 2.0.1,希望跟书上统一起来,这样以后学习的时候能够參考书上的也不会遇到太多问题。下好了之后就遇到了问题,我的电脑上仅仅有vs2013 ,而那个版本号的仅仅支持2010和2008,我把项目转成了vs2013的之后,新建project的时候发现没有cocos2d的模板,这就是2013的跟那个衔接有点问题。然后我又下载了cocos2d-x2.2.3版本号的,接着听室友说新版的不能再用vs来新建项目,接着又百度看看最新的是怎么一回事,原来是用Python脚本来一次新建多平台的多个project。好吧,接着下载Python,由于习惯问题我每次喜欢下载最新的软件,下载下来安装好了,环境变量也配好了,開始新建2.2.3的项目(顺便说一下,2.0.1的貌似还不能用Python这样的方法建,由于我没找到对应的文件,不知道是不是还有其它方法,所以我才下载2.2.3版本号的),执行的时候发现控制台报错,语法错误,说那个print怎么滴。。。又百度了一下才知道3.0版本号以后的Python的print改成了函数要写成print()才行,没办法卸载了又下载了一个2.7版本号的,接下来就是一马平川了,可是。。。。这仅仅是新建了项目而已,能不能编译然后在你手机上执行就难说了。
至于那个是怎么导入的我就不说了,说关键的,就是那么多红叉是怎么消除的。
1.把cocos2d-x-2.2.3\cocos2dx\platform\android\java 加入�到eclipse里面,方便以后调用。
2.把1导入的那个project加入�到buildpath。
3.參考http://blog.csdn.net/b1boy/article/details/14645277,这里面说的比較好,
NDK_ROOT 路径为D:\AndroidSDK\android-ndk-r9d
COCOS2DX路径为D:\cocos2d-x\cocos2d-x-2.2.3
NDK_MODULE_PATH 路径为 D:\cocos2d-x\cocos2d-x-2.2.3;D:\cocos2d-x\cocos2d-x-2.2.3\cocos2dx\platform\third_party\android\prebuilt
声明一下,上面的NDK_MODULE_PATH我在其它的博客上看到有些人说两个路径之间的那个是冒号,比方路径1:路径2:路径3。。。,我也改过这样,没改好,最后还是用的分号。事实证明分号是对的,不知道他们为什么非要强调说用冒号,可能是版本号的问题。
这两点非常重要,看清楚图上说的位置,设置好了错误基本上差点儿相同没了
4.改动Android.mk 加入�
$(call import-add-path,D:\cocos2d-x\cocos2d-x-2.2.3)
$(call import-add-path,D:\cocos2d-x\cocos2d-x-2.2.3\cocos2dx\platform\third_party\android\prebuilt)
5.NDK的路径里面绝对不能用空格。在eclipse里面调用的时候没提示我不能够,可是一用命令行你就会发现提示 路径里面不能有空格。至于cocos2dx的路径能不能有空格,我如今也记不清了,为了保险起见大家设置路径的时候都不要有空格或者中文字符。
6.假设cpp或者Java里面有文件说头文件或者包 类 没找到,你须要把D:\AndroidSDK\android-ndk-r9d\platforms\android-14\arch-arm\usr\include包括进去,new folder->advanced->link。。。->finish这样加入�进去。
以上就是我几十个小时的总结,哎。。。总算搞定了开头部分。
送给刚刚開始学cocos2d-x引擎 移植Android的同学的更多相关文章
- 关东升的《从零開始学Swift》即将出版
大家好: 苹果2015WWDC大会公布了Swift2.0,它较之前的版本号Swift1.x有非常大的变化.所以我即将出版<从零開始学Swift><从零開始学Swift>将在&l ...
- 《PHP 5.5从零開始学(视频教学版)》内容简单介绍、文件夹
<PHP 5.5从零開始学(视频教学版)>当当网购买地址: http://product.dangdang.com/23586810.html <PHP 5.5从零開始学(视频教学版 ...
- 从零開始学Swift之Hello World进化版
上节课,也就是昨晚啦,我们学习到从零開始学Swift之Hello World.那一节仅仅有一句代码,大家会认为不够过瘾. 那么这节课,就给大家来多点瘾货吧! 先上图! //var 代表变量的类型, s ...
- 从零開始学android<数据存储(1)SharedPreferences属性文件.三十五.>
在android中有五种保存数据的方法.各自是: Shared Preferences Store private primitive data in key-value pairs. 相应属性的键值 ...
- 【高德地图API】从零開始学高德JS API(五)路线规划——驾车|公交|步行
先来看两个问题:路线规划与导航有什么差别?步行导航与驾车导航有什么差别? 回答: 1.路线规划,指的是为用户提供3条路线推荐.[高德]在提供路线规划的时候,会提供用户自己定义路线规划功能,这是别家没有 ...
- 第13章、布局Layouts之RelativeLayout相对布局(从零開始学Android)
RelativeLayout相对布局 RelativeLayout是一种相对布局,控件的位置是依照相对位置来计算的,后一个控件在什么位置依赖于前一个控件的基本位置,是布局最经常使用,也是最灵活的一种布 ...
- 从零開始学android<SeekBar滑动组件.二十二.>
拖动条能够由用户自己进行手工的调节,比如:当用户须要调整播放器音量或者是电影的播放进度时都会使用到拖动条,SeekBar类的定义结构例如以下所看到的: java.lang.Object ↳ an ...
- 从零開始学android<mediaplayer自带播放器(视频播放).四十九.>
MediaPlayer除了能够对音频播放之外,也能够对视频进行播放,可是假设要播放视频仅仅依靠MediaPlayer还是不够的.还须要编写一个能够用于视频显示的空间,而这块显示空间要求能够高速的进行G ...
- 从头開始学 RecyclerView(六) LayoutManager
前言 在前面的文章中.每一个演示样例,都使用了LayoutManager,毕竟它是RecyclerView必不可少的一部分. LayoutManager,顾名思义,就是『布局管理器』. 使用例如以下代 ...
随机推荐
- selenium webdriver 学习笔记(三)
selenium webdriver 一.上传文件操作 上传文件夹一般要打开一个本地窗口,从窗口选择本地文件添加.所以一般会卡在如何操作本地窗口添加上传文件. 其实,在selenium webdriv ...
- 偷懒的inline-block解决方法
最近这几天看了inline-block的用法,用它来代替浮动实现水平排列很不错,只是要解决一下浏览器兼容和间隙的问题.关于ie6,7的兼容问题 <inline-block 前世今生>(ht ...
- QT中代码中与设计器中控件信号与SLOT连接(原来还可以这样连接)
双击testqt.ui 托一个push button到窗体中,双击,可以输入字符 按F4或 menu->edit->edit signals/slots 定义SLOT 选择已定义好的SLO ...
- 今天在发布IIS站点的时候遇到了一些问题
1.HTTP 错误 500.23 - Internal Server Error 检测到在集成的托管管道模式下不适用的 ASP.NET 设置. 分析:一般5XX的错误都是服务器的问题,这里把应用程序池 ...
- Android学习笔记:利用httpclient和AsyncTask 发起网络http post操作
1.在android4中,发起网络http操作,不能在Activity的事件(即主线程)中进行,必须在单独的线程中操作. 另外进行网络操作,需要在manifest文件中增加如下的权限: <use ...
- spring mvc 提交表单的例子
1. 构建MAVEN项目,然后转换成web格式,结构图如下: 2. 通过@RequestMapping来进行配置,当输入URL时,会以此找到对应方法执行,首先调用setupForm方法,该方法主要是生 ...
- java 集合类说明与区别
集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap ...
- Android 开发佳站3
eclipse 某些java文件乱码 摘要: [一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/archive/2013/04/24/3040219.h ...
- The Swift Programming Language--语言指南--协议
Protocol(协议)用于统一方法和属性的名称,而不实现任何功能.协议能够被类,枚举,结构体实现,满足协议要求的类,枚举,结构体被称为协议的遵循者. 遵循者需要提供协议指定的成员,如属性,方法, ...
- 开源ceph管理平台inkscope部署手册
一.前情提要 关于inkscope就不做过多介绍了,就是ceph的一个开源管理控制平台,跟ceph官方的calamary以及intel的VSM差不多一类,只是各自侧重点不一样. 相对而言,因为inks ...