Cocos2d-x教程(19)-cocos2d-x.xcodeproj-2.2.x版本对cocos2dx文件的引用以及Cocos2d-x 2.2.0版本后项目拷贝出来无法运行的原因
来源:互联网 发布:格林威治大学 知乎 编辑:程序博客网 时间:2024/06/07 07:03
欢迎加入 Cocos2d-x 交流群: 193411763
转载时请注明原文地址:http://blog.csdn.net/u012945598/article/details/17954549
今天在使用Cocos2d-x 2.2.1版本中的"curl.h"头文件时遇到了一个问题
提示文件没有找到。
之后笔者对比了一下Cocos2d-x 2.1.5版本,发现在2.1.5的版本中cocos2dx文件(curl文件夹位于cocos2dx文件夹目录下)是以groups(黄色文件夹)的形式存在于项目中的,而在2.2.x版本中采用了新的引入方式,也就是我们所见到的cocos2d-x.xcodeproj
(不理解groups形式请参考 http://blog.csdn.net/u012945598/article/details/17955215)
2.1.5版本:
2.2.x版本:
这也就解释了,为什么在2.2.0之后的版本中,如果将你的项目拷贝到了别的电脑上,项目将无法运行的原因。
因为2.2.0之后的版本中,cocos2dx文件夹不再存在于项目的目录下了,而是位于你的系统中的某个位置(下载完之后扔哪了就是哪),当编译器对cocos2dx文件做路径搜索时,会按照创建项目的机器中的cocos2dx文件的路径去搜索,而在另外一台电脑中,路径是不一样的,所以自然会找不到。搜索路径如下图:
我们常用的解决办法就是新建一个项目,将之前项目的Classes文件夹与Resources文件夹拷贝出来,再重新添加到项目中。
从形式上来说,在2.1.5版本中的cocos2dx的文件夹的作用与2.2.x版本中的cocos2dx.xcodeproj的作用是相同的,因为他们都是对cocos2d-x文件夹目录下的cocos2dx文件中的源码的引用。但是在使用过程中,又略有一些区别。
由于在2.1.5的版本中cocos2dx文件是以groups的形式被添加到项目中的,所以在使用的时候,我们可以没有任何顾忌的引用文件中的任何头文件 #include "xxx.h",原因我们在之前的参考文章中已经提过,是因为以groups形式添加到项目中的文件都是会被编译的。
编译的资源文件位置位于Compile Sources如下图:
然而还有一部分文件仍然是以引用的方式存在于项目中,类似于 curl.h,这些文件在使用的过程中并不能直接通过#include "xxx.h"方式获取到它们的头文件,而是要通过其上级目录索引到,例如我们要使用curl文件夹中curl.h的头文件:
#include "curl/curl.h"
又或者我们需要使用到platform中的CCThread类,需要引入头文件
#include "platform/CCThread"
若不加上级目录,就会出现文章开篇中的错误,这就是Cocos2d-x-2.1.5版本与2.2.x版本中cocos2dx中源码使用的区别
- Cocos2d-x教程(19)-cocos2d-x.xcodeproj-2.2.x版本对cocos2dx文件的引用以及Cocos2d-x 2.2.0版本后项目拷贝出来无法运行的原因
- Cocos2d-x教程(19)-cocos2d-x.xcodeproj-2.2.x版本对cocos2dx文件的引用以及Cocos2d-x 2.2.0版本后项目拷贝出来无法运行的原因
- 更改cocos2d-x android 项目的cocos2d-x的版本
- Cocos2d-x教程(14)-Cocos2d-x 2.2.x版本 Json解析(初级篇)
- Cocos2d-x教程(14)-Cocos2d-x 2.2.x版本 Json解析(初级篇)
- cocos2d-x-2.2.2版本的安装
- 【Cocos2d-x】cocos2d-x的拷贝机制
- Cocos2d-x V2.x版本对64bit的支持
- 【cocos2D-x学习】15.cocos2d-x 2.0 版本的 ShatteredSprite
- Cocos2d-x 3.x版本---创建项目
- Cocos2d-x版本升级
- Cocos2d-x版本升级
- Cocos2D-X SimpleGame cocos2d-x完成游戏后的一些锦上添花修饰 (6) ----版本cocos2d-2.0-x-2.0.3 .
- cocos2d-x 2.0 版本的 GLES-Render
- 怎么样升级cocos2d-x的版本
- cocos2d-x 2.0 版本的 GLES-Render
- cocos2d-x 3.0+版本的渲染机制
- cocos2d-x不同版本的安装兼容问题
- qt QListWidget 设置选中项focus rentangle 透明
- 去除数组中的重复元素
- StoreKit--SKStoreProductViewController
- PowerDesigner 数据库生成物理数据模型 生成数据库测试数据
- 地形平滑算法
- Cocos2d-x教程(19)-cocos2d-x.xcodeproj-2.2.x版本对cocos2dx文件的引用以及Cocos2d-x 2.2.0版本后项目拷贝出来无法运行的原因
- 用libcurl完成post请求
- php面向对象中的单例与静态方法的对比,以及关于class自动加载的分析
- 一些典型的测试方面的误解
- Android 开源框架Universal-Image-Loader完全解析(三)---源代码解读
- 链表(6)----查找链表中间节点
- Android 外网连接解决方案
- 运行编译完的镜像
- Java类初始化代码中的异常Exception控制策略