XCode 7 运行 cocos2dx 2.2.6问题小节
终于磕磕绊绊的在模拟器上,成功运行了已有项目。
公司提供的Mac系统,版本炒鸡低。向同事拷贝了OS,和XCode。
安装完成后,将已有的可以在Windows上成功运行Android版本的项目,拷贝到了Mac上。
离职同事表示,自己可以正常在Mac上运行,只在虚拟机上运行,真机上不支持64位的。
用xcode打开proj.ios下的项目,
报出的第一次错误是 编译错误20个。
提示NObjSRuntime.h 什么 qualitified_id 以及NSString之类的,搜索了网上无数方法,都不管用。
最后木有办法,一个个错误点开,猜测是项目内的Wrapper.h 文件和 第三方内提供的Wrapper.h文件冲突,导致项目内其他自己写的h,cpp文件搜索到了第三方Wrapper.h。
一个一个为Wrapper.h加上了目录以进行区分。
这个错误,就此解决了。
然后,再编译就是Link错误。Undefined symbols for architecture i386:
因为第三方加入了anysdk,所以提示了anysdk::framework::********
以及一长溜的std::_1::std::string等等总共71个错误。
网上搜索了无数个方法,都试了,但是解决不了。后来,发现是自己煞笔,因为仔细想想这个错误其实就是没有导入源文件啊,或者是缺少库啊造成的。
but,这些库反复看了,根本就不少么。后来试着将项目的 Build Settings->Apple LLVM *.0 -Language -C++ 下的C++ Standard Libray 由Compiler Default 改成LibC++,同时将Deployment Target改成 7.0 以下,至于为什么, 我也不知道!!!!!
重新Build后,错误变成了45个。依旧是Link错误。Undefined symbols for architecture i386
虽然错误类型一样,但是终于内容变了不是么?
错误变成了 CCDictionary::…… CCString…… 之类的一系列错误,在网上搜索了两天,结果发现很多人都遇到这个问题,但是后来大家都不分享解决之道,真的让人很崩溃撒~
特么的,终于在一个满是英文的地方,看到一个人不经意的提到,在将项目改成libC++ 时,同样的操作也应该对cocos2dx项目进行。我累个擦~~~~~
就是将cocos2dx的 Deployment Target 改成7.0以下,我项目选择的是6.0,为了保险,此时cocos2dx 也选的6.0.
然后将 C++ Standard Libray 改成LibC++。当然了,我同时还顺带着将C++ Language Dialect改成了c++ 11 .此时我声明一下,我不知道这样改了之后会影响什么。
当解决了这些问题后,我觉得我的新生要来了,我要重生了,因为的真的真的特别累! 再不运行成功,我可能就会自爆或者自燃了。
但是,人得相信自己的承受能力。因为,特么的,Build一下,发现,还是出现了Link错误,幸好是一个啊。Only One。
但是,我看到错误后,无从下手啊,因为是duplicate symbols _InternetConnect IReachability.o等一系列的错误
看了半天,有人说是在import的时候,误将.h 写成了.m 你妹啊 ,你大爷的 我觉得这种错误是不可能存在的!
因为,我查了一下,Reachability.m是asi文件夹下的,这个很明显是第三方代码,所以肯定不会错。纠结了半天,还是决定仔细看看google出的第一条处理方法,恩,就是一堆歪果仁写的英文,貌似是让remove掉,重定义的部分。我可不敢,于是我根据提示IReachability.o 和 Reachability.o冲突,找到了Reachability.m文件,将kInternetConnect等变量,进行了重命名。
问,为啥是改的Reachability.m文件,而不改IReachability.m文件呢? 因为,IReachability.o是包含在第三方静态库里的,我想改,没有提供给咱们改的方法啊。
终于,大胆的改完之后,Build Success了!
当然,是在虚拟机上。
最后,我还是决定真机上Run一下,不好意思,出现了Code Sign Error错误。这个貌似是个大坑。我还没来得及查看怎么处理。唉…… 先酱紫吧~~~~~
最新文章
- Pyqt QSS简单的Ui美化
- BZOJ 1012 题解
- Raphael实现商品来源去向图
- Bootstrap 3支持IE 8遇到的一个小问题
- BackgroundWorker Threads and Supporting Cancel
- 远程连接mongodb出现 no route to host 和 Connection refused
- FFMPEG视音频编解码零基础学习方法-b
- Tr A(HDU 1575 快速矩阵幂模板)
- C51 函数/程序段的定位
- Swift入门教程:基本语法大全
- bzoj1597[Usaco2008 Mar]土地购买 斜率优化dp
- Spark之join、leftOuterJoin、rightOuterJoin及fullOuterJoin
- day17
- 2019-04-23-day038-数据库的语句
- face alignment[Ordinary Procrustes Analysis]
- Win10上运行Docker
- centos6.9 svn提交更新到网站根目录
- 水平方向margin:auto
- CH0201 费解的开关 枚举
- SQLite随机获取一行数据
热门文章
- iOS刻度尺换算之1mm等于多少像素理解
- java.lang.NullPointerException 空指针异常问题
- 基于 CADisplayLink 的 FPS 指示器详解
- 转:一篇很全面的freemarker教程
- Redis学习之路(000)- 目录
- Rust hello world !
- 【SqlServer】SqlServer存储过程使用
- <;welcome-file>;index.action<;/welcome-file>;直接设置action,404和struts2中的解决方案
- [aaronyang] nodejs学习-mongodb[1]
- 如何学好C、C++语言