码迷,mamicode.com
首页 > 其他好文 > 详细

Xcode莫名其妙问题could not build module ‘Foundation‘

时间:2015-05-07 17:13:06      阅读:534      评论:0      收藏:0      [点我收藏+]

标签:

今天用Xcode编译项目时,遇到一个莫名其妙的问题:could not build module ‘Foundation‘,以及could not build module ‘UIKit‘,NSString.h expect identifier问题,提示的位置是在Pod的库中。几经查找,才发现是自己一时的粗心。。。

遇到这个问题时,发现真机编译没有问题,然后编译其它项目时也提示类似的问题,最主要的是一个比较简单的项目编译时也会提示NSString.h expect identifier问题,突然警觉难道我不小心把NSString.h修改了?因为上午我的确打开过NSString.h文件。

但是从提示来看根本找不出问题的真实位置,于是我在另一台电脑上找到一份干净的NSString.h文件,与本机的NSString.h文件进行比较,就发现了问题所在:我把- (NSRange)rangeOfString:(NSString *)aString;这一行中的aString给删了。。

我说苹果你好歹也要给库文件加一个只读权限啊,害我苦苦寻找半天原因。不过,相对于那些把Xcode卸载再重新安装的,我算幸运了。

NSString.h文件路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h


别人总结的可能的原因:

可能性一:c,c++, oc兼容,就上楼上stackoverflow 的方法修改.pch就行了,或者还要在build parse里面将oc设置为oc++
可能二:照着错误提示有一项是@end缺少或者)缺少 ,编译器检测到由此提出的错误后20个左右就罢工了,见too many error emitted...
可能性二:UIKit库损坏或被修改(貌似ios5以上不能修改,一改就坏)  
                  解决一:通常通过删除moduleCache就可以了,这也是网上通常的做法。
                  解决二:我在本机上无论如果多次删除moduleCache都无效,最后是问同学拿了个.h文件(怀疑被修改的)覆盖后满血复活!
最后实在不行,无奈就彻底删除xcode,记住要彻底,不是直接拿去垃圾桶,网上很多教程,重装一个。
提醒哦,删除moduleCache要clean和reset模拟器一下。 

我想其中的最后一条彻底删除Xcode估计也是因为不小心修改了库文件吧


参考:

莫名其妙的错误:could not build module ‘Foundation‘

Could not build module ‘Foundation‘ in Xcode 6

xcode 5.0.2 could not build module "Darwin"

Xcode莫名其妙问题could not build module ‘Foundation‘

标签:

原文地址:http://my.oschina.net/ioslighter/blog/411810

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!