CoCos2D-X-2.1.5在Eclipse中导入HelloCpp项目搭建
1、前言
最新正在做一个校园增强现实的应用,虽然不知道cocos2d-x具体到最后能做成什么样子,但还是拿来试试,本文章仅从在Eclipse中采用复制一个新项目副本的方式来导入一个现成的HelloCpp为例,讲述如何配置cocos2d-x项目,当然如何从头开始建立一个cocos2d-x项目还没研究,这里就先做记录。
2、问题描述
由于我不喜欢在原本的项目上进行修改,因此我总是导入到自定义的目录下进行编译,但是发现第一次建立cocos2d-x的项目有很多错误,项目根本无法编译通过,而且网上也很难找到对应的解决方案,最后琢磨出来要修改很多才能OK。
3、原因
最主要原因的是项目的配置和目录的指定,下面详细说明。
4、解决方案
Step1:使用Eclipse在E:\cocos2d-x-2.1.5\samples\Cpp\HelloCpp目录下导入proj.android项目,该项目是转为Android平台准备的,而其他则是为其他平台准备的。
Step2:把E:\cocos2d-x-2.1.5\cocos2dx\platform\android\java\src\org\cocos2dx目录下的源码lib库文件目录复制到导入好的项目HelloCpp\src\org\cocos2dx目录下,最后在Eclipse中刷新src目录,就会看到如下的样子。
Step3:在cocos2d的资源文件E:\cocos2d-x-2.1.5\samples\Cpp\HelloCpp\Resources下到找需要的文件,并把它复制到D:\MyCODE\Android\HelloCpp\assets目录下,assets目录是开发人员需要自己建立,最后如下图所示。
Step4:修改Application.mk文件配置
在Application.mk文件中添加NDK_MODULE_PATH:= E:/cocos2d-x-2.1.5;E:/cocos2d-x-2.1.5/cocos2dx/platform/third_party/android/prebuilt(注意这里的斜杠方向)。
如果你想你的程序能够在Android X86模拟器中运行,那么还需要在该文件中添加APP_ABI := armeabi armeabi-v7a x86,表示该程序支持armeabi/armeabi-v7a/x86这三种内核。
Step5:修改项目编译选项
C/C++ Build -> Builder Settings -> Build command:
注意:要把“Use default build command”前的勾取消,并修改“Build command”,这里我写“${NDK_ROOT}”因为我在电脑中添加了环境变量,如下图,当然也可以写绝对地址。
C/C++ Build -> Environment ->add
这里添加的变量和Application.mk中添加的变量值相同。
Step6:修改Link Folder,添加项目Classes目录下的C++源码(注意)
由于导入项目后项目的位置已经和原来的发生改变,所以需要修改所有Link Folder目录。首先在项目中删除Classes、cocos2dx、extensions这三个目录,然后在项目属性C/C++ General -> Paths and Symbols下的Source Location标签中逐一添加Classes、cocos2dx、extensions这三个Link Folder。
Classes:E:\cocos2d-x-2.1.5\samples\Cpp\HelloCpp\Classes
cocos2dx:E:\cocos2d-x-2.1.5\cocos2dx
extensions:E:\cocos2d-x-2.1.5\extensions
Step7:修改Includes(注意)
在项目属性C/C++ General -> Paths and Symbols下的Includes中修改和添加对应的目录。
E:/Android/android-ndk-r9/sources/cxx-stl/gnu-libstdc++/4.6/include
E:/Android/android-ndk-r9/sources/cxx-stl/system/include
E:/Android/android-ndk-r9/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/include
E:/Android/android-ndk-r9/platforms/android-8/arch-arm/usr/include
E:/cocos2d-x-2.1.5/cocos2dx
E:/cocos2d-x-2.1.5/cocos2dx/include
E:/Android/android-ndk-r9/sources/cxx-stl/stlport/stlport
E:/Android/android-ndk-r9/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.4.3/include
CoCos2D-X-2.1.5在Eclipse中导入HelloCpp项目搭建的更多相关文章
- ④---在Eclipse中导入GIT项目
Eclipse中导入GIT项目 以下将为大家介绍如何在Eclipse中导入GIT项目. 一.在Eclipse中安装GIT 1首先打开Eclipse,然后点击Help>Install New So ...
- eclipse 中导入 maven项目 启动报错
导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...
- 在Eclipse中导入web项目时的问题总结
一.导入项目 在Project Explorer右击,import-->Existing Projects into Workspace,选择要导入的文件,Finish. 二.解决报错 (1)T ...
- Eclipse中的maven项目搭建
一.eclipse中的maven设置 1.打开“首选项”----> "maven"---->"Installations".用来查看maven的使用 ...
- eclipse中导入SVN项目步骤
1.eclipse中安装SVN插件 在线安装步骤: (1)点击 Help --> Install New Software...(2)在弹出的窗口中点击add按钮,输入Name(任意)和Loca ...
- eclipse中导入maven项目:org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.Maven
org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter) 解决方法为:更新eclipse中的maven插件 1.help ...
- eclipse中导入maven项目:org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.proje
org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter) 解决方法为:更新eclipse中的maven插件 1.help ...
- eclipse中SSM(maven)项目搭建全过程+实现用户登录功能
项目创建之前确保eclipse中已经配置好了jdk,tomcat,maven如果没有配置下面有配置教程的链接 eclipse中配置jdk的教程url:http://www.cnblogs.com/ ...
- eclipse 中 导入git项目无法导入的问题
研发在git上打了一个分支,需要重新导入分支项目.此时发现与之前相同模式导入失败,不起作用. 解决: 需要在Git Repositories中对应项目下找到.project 文件并进行修改,修改项目名 ...
随机推荐
- jsoup抓取豆瓣美女
package com.huowolf; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOu ...
- tensorflow serving GPU编译问题
编译gpu版本:bazel build -c opt --config=cuda --spawn_strategy=standalone //tensorflow_serving/model_serv ...
- 优化后队列的实现(C语言实现)
上一篇中的队列的定义与实现(C语言实现) 中.不管是顺序队列还是链式队列,在尾加和删除头部的操作时.总有一个时间复杂度让人不惬意. 比方在顺序队列中,删除头部的操作后,总要将后面全部的结点都向前移动一 ...
- maven org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 60
maven org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant poo ...
- 微信小程序独家秘笈之抽奖大转盘
代码地址如下:http://www.demodashi.com/demo/14209.html 一.前期准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.co ...
- 1038. Recover the Smallest Number (30)
题目链接:http://www.patest.cn/contests/pat-a-practise/1038 题目: 1038. Recover the Smallest Number (30) 时间 ...
- 笔记本连接老式显示器(VGA线+HDMI接口)
参考:http://www.cnblogs.com/me115/p/3970945.html
- MNIST数据集和IDX文件格式
MNIST数据集 MNIST数据集是Yan Lecun整理出来的. NIST是美国国家标准与技术研究院(National Institute of Standards and Technology)的 ...
- Pandas中DataFrame修改列名
Pandas中DataFrame修改列名:使用 rename df = pd.read_csv('I:/Papers/consumer/codeandpaper/TmallData/result01- ...
- Html5 Geolocation获取地理位置信息(转)
Html5中提供了地理位置信息的API,通过浏览器来获取用户当前位置.基于此特性可以开发基于位置的服务应用.在获取地理位置信息前,首先浏览器都会向用户询问是否愿意共享其位置信息,待用户同意后才能使用. ...