Xcode 6 - 未知类型名称'NSString'/预期标识符或'('

时间:2014-09-23 19:59:54

标签: ios objective-c xcode ios8 xcode6

当我在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对我不起作用。

您如何建议我修复这些错误?

5 个答案:

答案 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选项卡下。请参阅以下链接的完整答案。

Check this post

答案 3 :(得分:0)

我使用Xcode 8.3.3,我也遇到了这个问题,我通过选择文件来解决这个问题,在身份和类型部分的Xcode右面板中选择Type to Objective-C ++。

答案 4 :(得分:-1)

您也可以尝试删除FacebookSDK文件夹中的Samples文件夹(然后在Xcode中删除对它的引用。