IOS开发入门之iOS开发:Xcode报错问题
凌雪 2018-10-10 来源 :网络 阅读 1411 评论 0

摘要:本文将带你了解IOS开发入门iOS开发:Xcode报错问题,希望本文对大家学IOS有所帮助。

本文将带你了解IOS开发入门iOS开发:Xcode报错问题,希望本文对大家学IOS有所帮助。


       

Xcode报错如图:


   

verify final result code for completed build operation

Build   operation failed without specifying any errors. Inpidual build tasks may have   failed for unknown reasons.

One possible cause is if there are too many (possibly zombie) processes; in   this   case, rebooting may fix the problem.

Some inpidual build task failures (up to 12) may be listed   below.

   


1.cocoapods版本导致


检查发现本地mac系统上cocoapods版本是最新的1.4.0



   

//删除1.4.0包

sudo   gem uninstall cocoapods -v 1.4.0

 

//然后安装指定版本的Cocoapods

sudo gem install cocoapods -v 1.3.1

 

//检查版本

pod   --version

   


然后重新拉代码,pod   update
编译运行OK!

2.Perform Single-Object   Prelink设置导致

categories in static   library

xcode编译的时候不会把静态库里面全部的类都加载进去,它会找主工程用到了哪些符号,然后把用到的加载进去。但是这个看起来很美的机制有个大坑,就是oc的分类是不生成符号的,也就是说,比如你在工程用了一个分类的方法[NSString   categoryMethod], 编译器只会认为需要用到NSString,   而不知道categoryMethod是静态库里一个分类的方法,所以不会去加载静态库的分类。

目前的解决方法就是给编译器一个标志,告诉编译器整个静态库都要加载:

1).-all-load.   把所有静态库里的所有.o都加载
2).-force_load. 可以指定加载哪个静态库的所有.o
3).-ObjC.   把所有OC代码都加载。
4).Perform Single-Object   Prelink.
前3个编译选项都是设在主工程的,这个选项是设置在静态库的。表示把这个子工程预编译成一个.o文件,当整个静态库有一个符号被引用就把整个.o文件打包进去。
可能是Perform   Single-Object Prelink的实现有bug,文件多了就挂了。

    

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之IOS频道!


本文由 @凌雪 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程