当我在Xcode 6中运行我的项目时,我遇到了许多奇怪的错误。
Parse Issue - Unknown type name 'NSString'
Format argument not an NSString
Could not build module Foundation
Could not build module QuartzCore
所有这些错误都发生在Apple的头文件中,例如:CAMediaTiming.h,NSObjCRuntime.h,NSZone.h,NSObject.h,CALayer.h等。
不幸的是,这里的答案:ios - Parse Issues in NSObjCRuntime, NSZone, and NSObject对我不起作用。
您如何建议我修复这些错误?
答案 0 :(得分:19)
问题是我的项目中有一些.c
个文件,显然Xcode 6不喜欢.c
个文件。
我将.c
文件的扩展名更改为.m
,Xcode 6又开心了!
答案 1 :(得分:17)
如果你有一个PrefixHeader文件导入项目中的Objective-C代码和一些普通的C文件,你可能会收到此错误,因为C文件试图导入Objective-C。
要修复,请像这样包装您的objective-c导入:
#ifdef __OBJC__
#import <OOObjectiveCClass.h>
#endif
答案 2 :(得分:6)
查看Prefix Header文件路径是否正确放置在Build Settings选项卡下。请参阅以下链接的完整答案。
答案 3 :(得分:0)
我使用Xcode 8.3.3,我也遇到了这个问题,我通过选择文件来解决这个问题,在身份和类型部分的Xcode右面板中选择Type to Objective-C ++。
答案 4 :(得分:-1)
您也可以尝试删除FacebookSDK文件夹中的Samples文件夹(然后在Xcode中删除对它的引用。