Cocos2d-x学习笔记之Cocos2d-x开发环境搭建
作者:刘昊昱
博客:http://blog.csdn.net/liuhaoyutz
Cocos2d-x源码包下载地址:
http://cocos2d-x.org/projects/cocos2d-x/wiki/Download
我下载的是cocos2d-2.0-x-2.0.4版本,下载后,直接解压缩。
我用的IDE是VS2010,首先执行源码包根目录下的批处理文件install-templates-msvc.bat安装VS2010模板文件,这样以后才可以创建自己的Cocos2d-x项目。
打开解决方案源码包根目录下的解决方案ocos2d-win32.vc2010.sln,如下图所示:
在解决方案上单击右键,选择“生成解决方案”,或者按“F7”,即开始编译cocos2d-x库及该解决方案,因为第一次编译需要编译cocos2d-x库,所以需要的时间比较长,在我的电脑上编译用时大概15分钟。
编译完成后,在项目“HelloCpp”上单击右键,选择“设为启动项目”。然后点击菜单“调试-开始执行(不调试)”,运行效果如下图:
同样的步骤,将“HelloLua”设置为启动项目,然后执行,运行效果如下图所示:
下面,我们来建立一个自己的Cocos2d-x项目。
在VS2010菜单中选择“文件-新建-项目”,在弹出的对话框中选择Cocos2d-win32 Application模板,输入本项目名称“cocos_study_hello_world”,点“确定”按钮。
这里有一个注意的地方,在cocos2d-2.0-x-2.0.4\template\msvc\CCAppWiz.win32\HTML\1033目录下的default.htm和features.htm两个文件上点击右键,选择“属性”,点击最下面的“Unblock”按钮。否则会出现如下Script Error界面:
接着上面,设置好“新建项目”对话框,点击“确定”按钮后,出现Cocos2d-x应用程序向导,其界面如下:
点击“下一步”,可以设置应用程序特性:
点击“Finish”,生成解决方案及项目,如下图所示:
在解决方案“cocos_study_hello_world.win32”上单击右键,选择“生成解决方案”,开始编译。编译会出错,提示无法打开包含文件CCStdC.h和cocos2d.h,此时需要设置头文件搜索路径:
在项目“cocos_study_hello_world.win32”上单击右键,选择“属性”,在打开的对话框中选择“C/C++”项目的子项“常规”,修改“附加包含目录”,将原设置中的$(SolutionDir)替换为我们自己的cocos2d-x源码包所在目录。
设置好头文件搜索目录后,再次编译解决方案,找不到头文件的错误提示就不会出现了,但是又出现链接错误:“无法打开文件libcocos2d.lib”,解决方法是修改库文件搜索路径:
在项目“cocos_study_hello_world.win32”上单击右键,选择“属性”,在打开的对话框中选择“链接器”项目的子项“常规”,修改“附加库目录”,将我们的Cocos2d-x源码包目录下的Debug.win32目录加入进去。注意,这个目录是编译Cocos2d-x库之后才生成的。
设置好库文件的搜索路径后,再次编译解决方案,这次编译通过,但是运行项目时,又出现如下错误提示:
原因是项目执行时,找不到动态链接库文件libcocos2d.dll,解决方法是将libcocos2d.dll文件所在的目录临时添加到PATH环境变量中,方法如下:
在项目“cocos_study_hello_world.win32”上单击右键,选择“属性”,在打开的对话框中选择“调试”项目,修改“环境”选项,将我们的Cocos2d-x源码包目录下的Debug.win32目录添加到PATH中。比如,在我的电脑上,修改“环境”选项为PATH=C:\Users\hliu77x\Documents\cocos2d-x\cocos2d-2.0-x-2.0.4\Debug.win32,即我安装的Cocos2d-x源码包下的Debug.win32所在目录,libcocos2d.dll以及其它一些静态、动态链接库就在该目录下。如下图所示:
修改完环境后,再次编译解决方案,执行项目,这次编译成功,同时项目也能执行了,运行效果如下图所示:
至此,Cocos2d-x开发环境我们就搭建好了。
Cocos2d-x学习笔记之Cocos2d-x开发环境搭建的更多相关文章
- Android学习笔记(一)开发环境搭建
Android开发环境搭建 安装JDK 1.如果你还没有JDK的话,可以去这里http://www.oracle.com/technetwork/java/index.html ,接下来的工作就是安装 ...
- angularjs2 学习笔记(一) 开发环境搭建
开发环境,vs2013 update 5,win7 x64,目前最新angular2版本为beta 17 第一步:安装node.js 安装node.js(https://nodejs.org/en/) ...
- 【深度学习笔记】Anaconda及开发环境搭建
在学习了一段时间台大李宏毅关于deep learning的课程,以及一些其他机器学习的书之后,终于打算开始动手进行一些实践了. 感觉保完研之后散养状态下,学习效率太低了,于是便想白天学习,晚上对白天学 ...
- 【Vue 学习笔记 一、Vue开发环境搭建】
搭建Vue的开发环境 1.首先安装Nodejs (因为我的系统是Windows的所以就选择第一个了,这个看个人的开发环境) 下载好后,然后一路确定,如果有更改安装目录的需求,就自己切换安装目录,由于 ...
- [学习笔记]java基础Java8SE开发环境搭建、第一个Java Hello World、Java程序的编译与执行
本文作者:sushengmiyan 本文地址:http://blog.csdn.net/sushengmiyan/article/details/25745945 内容简介: ------------ ...
- Java web与web gis学习笔记(一)——Tomcat环境搭建
系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...
- 区块链Hyperledger Fabric 学习记录(一)开发环境搭建(ubuntu16.04/ubuntu18.04)
目录 Fabric开发环境搭建 更新说明 教程环境及软件版本 Docker 安装Docker 配置用户组 配置Aliyun Docker加速器 安装docker-compose Go 下载源码 安装源 ...
- Scala学习笔记(一):环境搭建
计算机领域的编程语言种类繁多,如C.C++.Java.C#等,我们知道的一般都是较为流行的编程语言,然有更多的是没听说过的,于是也就说不上关注或者使用了 一次在网上查资料时,无意间看到了“函数式编程” ...
- Redis学习系列二之.Net开发环境搭建及基础数据结构String字符串
一.简介 Redis有5种基本数据结构,分别是string.list(列表).hash(字典).set(集合).zset(有序集合),这是必须掌握的5种基本数据结构.注意Redis作为一个键值对缓存系 ...
- Hibernate学习笔记一 使用idea开发工具搭建框架
1.导包,包下载地址:http://hibernate.org/orm/downloads/ 2.创建数据库,准备表,实体.示例: CREATE TABLE `cst_customer` ( `cus ...
随机推荐
- Javascript实现打字效果
伤感的 学期末 今天是这学期的最后一天,考完了最后一门数学,明天我们就要各自为自己的暑假打算打算了,所以趁着大家还没走一起出去打了打篮球,玩了玩轮滑,很累但是很开心,最大的感触莫过于忧伤额,明年我或许 ...
- android 在fragment中获取界面的UI组件
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanc ...
- Foundation和UIKit框架图
学习Foundation和UIKit的时候比较容易忽视的一个问题: 对于一个新的类,知道它的用法和属性方法,但往往忽视了它的继承关系, 了解类的继承关系能帮助加深对其理解. 另外在官方文档中每一个类的 ...
- TYPEC 接口芯片CC逻辑原理与必要性
USB Type-C凭借其自身强大的功能,在Apple,Intel,Google等厂商的强势推动下,必将迅速引发一场USB接口的革命,并将积极影响我们日常生活的方方面面.为了能够使自己的设备兼容这些接 ...
- grep简单常用的语法介绍
说明: grep -n 关键字 查询的文档 ->-n表示打印行号 grep -c 关键字 查询的文档1 查询的文档2 ->-c表示输出匹配行的数目,而不是输出匹配的行. grep -rn ...
- .Net中C#的DllImport的用法
大家在实际工作学习C#的时候,可能会问:为什么我们要为一些已经存在的功能(比如 Windows中的一些功能,C++中已经编写好的一些方法)要重新编写代码,C#有没有方法可以直接都用这些原本已经存在的功 ...
- Good vs Evil
Good vs Evil Description Middle Earth is about to go to war. The forces of good will have many battl ...
- android & Linux uevent机制
Linux uevent机制 Uevent是内核通知android有状态变化的一种方法,比如USB线插入.拔出,电池电量变化等等.其本质是内核发送(可以通过socket)一个字符串,应用层(andro ...
- angular.extend
function f1() {} var f2 = angular.extend(f1, { active: false, toggle: function() { this.active = !th ...
- ☀【动画】过渡 transition
CSS3 动画系列3-transition(过渡) √http://www.css88.com/archives/5403 如果丘处机没有路过牛家村,中国将是最发达国家 <!DOCTYPE ht ...