先给自己科普一下, android sdk 是给java开发者用的,  咱C++开发者用的是android ndk, 所以就是使用ndk来编译cocos2dx程序了

使用命令行创建一个项目, 我这里创建的是一个lua项目:cocos new lua_proj2 -p com.company_name.program_name -l lua -d d:\xxx\xxx
此时创建了一个DEMO程序, 此时就可以使用cocos命令生成一个apk包, 进入到目录lua_proj2\frameworks\runtime-src下面,  在此目录下面执行命令cocos compile -p android 就会生成一个apk包, 把这个拖到genymotion上面, 就安装跑起来了. 
上面说的是不使用eclipse的方式来生成一个apk包,  下面记录一下在eclipse中加载lua_proj2这个项目, 并生成apk包的过程.   为什么一定要将cocos2dx项目导入到eclipse中来生成apk包呢, 因为在eclipse中可以连接AVD来调试android程序,  再者, eclipse可以运行在linux环境下面, 后面我打算在linux进行开发, 所以这一步是一定要跨出去的

打开eclipse, 加载lua_proj2项目, 在此注意一下, 不需要加载libcocos2dx这个项目, 只要加载lua_proj2这个自己新建一项目即可
在eclipse中右击lua_proj2 -> Properties.  出现Properties for  lua_proj2框框

创建一个新的builder

第一个红框是builder名称, 随便填写, 第二个红框框是NDK生成工具, 即, 使用此工具来编译C++项目, 第三个红框框是工作目录, 此处我使用lua_proj2项目目录作为工作目录, 切换到Environment选项卡, 新建一个在此生成器中使用的环境变量NDK_MODULE_PATH, 值是......\lua_proj2\frameworks\cocos2d-x\cocos;......\lua_proj2\frameworks\cocos2d-x;......\lua_proj2\frameworks\cocos2d-x\external,  前面的.......是绝对目录的省略, 这里要输入绝对路径名称,  在此我就不写绝对路径了.

一路OK下去, 到下面这个画面

这个就新建立的builder, Project->Build Project

出现大量的error: 'override' does not name a type错误, 这是由于NDK的版本太低了,  override是C++11中才有的关键字, 而到NDKr10才支持C++11, 所以要升级NDK. 到官网去下载吧http://developer.android.com/tools/sdk/ndk/index.html#Installing
不大, 400多M的样子, 更新完成之后, 看一下ndk\toolchains目录下面的编译器, 我的目录是下面这样子的
我很想使用clang来编译, 但是现阶段我还不会配置, 就用GCC吧, x86-4.6  & x86-4.8两个版本的GCC, 4.8的支持C++11
在Application.mk中添加一句NDK_TOOLCHAIN_VERSION = 4.8 就是指定使用GCC4.8来编译cocos2dx项目, 跑起来了, 下面是eclipse跑起来的console输出
跟命令行下执行cocos compile -p android 跑出来的是一样的,  都是在编译程序.  下面进入到在eclipse下面调试程序

eclipse下编译cocos2dx 3.0的更多相关文章

  1. cocos2dx在Eclipse下编译报错:Cannot find module with tag 'CocosDenshion/android' in import path

    在Eclipse下编译cocos2dx项目,报错如下: Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/ ...

  2. eclipse下编译hadoop源代码(转)

    hadoop是一个分布式存储和分布式计算的框架.在日常使用hadoop时,我们会发现hadoop不能完全满足我们的需要,我们可能需要修改hadoop的源代码并重新编译.打包. 下面将详细描述如何从sv ...

  3. 在eclipse下远程调试hadoop2.0

    在<在eclipse下编译hadoop2.0源码>一文中,我详细介绍了如何在eclipse环境和命令行环境下编译hadoop2.0源代码,并简单介绍了如何构建hadoop环境,这篇文章将着 ...

  4. Ubuntu13.04 Eclipse下编译安装Hadoop插件及使用小例

    Ubuntu13.04 Eclipse下编译安装Hadoop插件及使用小例 一.在Eclipse下编译安装Hadoop插件 Hadoop的Eclipse插件现在已经没有二进制版直接提供,只能自己编译. ...

  5. linux下编译gcc6.2.0

    linux下编译gcc6.2.0 在archlinx的下gcc已经更新到6.2.1了,win10的WSL下还是gcc4.8.官方源没有比较新的版本,于是自己编译使用. GCC6的几个新特性 GCC 6 ...

  6. linux下编译qt5.6.0静态库——configure配置

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  7. linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  8. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

  9. linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

随机推荐

  1. Python 字符串操作函数二

    #-*- coding:utf-8 -*- line = "l want watch movie with you ." print(line.center(50)) print( ...

  2. Some Parameter Interpretation On Using Mininet

    MiniNet使用很简单,下面以下面帮助界面截图为例,简单讲述常见的几个命令即可: sudo mn --topo single,3--mac --switch ovsk--controller rem ...

  3. html传值及接收传值

    传值:url?para1=value1&para2=value2 接收传值: <script type="text/javascript"> function ...

  4. IDEA 创建git 分支 拉取分支

        此时只是在本地创建好了分支,修改源代码后add,commit将本地分支提交到远程仓库          分支已创建,其它成员此时就可以从git拉分支

  5. c++ 常用数据类型,命名规则, 不常有数据类型

    1. 常用数据类型 最大值0111111111111111 = 32767最小值1000000000000000 = -32768 short 最低16位 2**7 - 1 负值:反码 int 至少和 ...

  6. 在Unity场景中更改天空盒的步骤

    一.介绍 目的:在Unity场景中制作一个天空盒. 软件环境:Unity 2017.3.0f3,VS2013. 参考 skybox 二.自制一个天空盒 1,创建一个材质material 2,更改属性为 ...

  7. 2013年第四届蓝桥杯C/C++B组省赛题目解析

    一. 高斯日记 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后 ...

  8. android手机如何获取手机号

    两个方案:1 通过android.permission.READ_PHONE_STATE读取  2 通过短信过滤,读取手机号. 按照第1个方案,AndroidManifest.xml需要添加 < ...

  9. Lucene系列一:搜索引擎核心理论

    一.为什么需要搜索引擎 问题1:数据库索引的原理是怎样的? 索引原理:对列值创建排序存储,数据结构={列值.行地址}.在有序数据列表中就可以利用二分查找快速找到要查找的行的地址,再根据地址直接取行数据 ...

  10. Java如何使用线程异常?

    在Java编程中,如何使用线程异常? 此示例显示如何在处理线程时处理异常. package com.yiibai; class MyThread extends Thread { public voi ...