0
我创建了一个名为“ObjCWorkAppMath.m”的NSObject文件,它包含一些有用的功能,我想在我的ViewController文件中使用该类,但XCode不编译我的项目并返回错误如下:Apple O-mach链接器错误
duplicate symbol _OBJC_METACLASS_$_ObjCWorkAppMath in:
/Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppMath.o
/Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppViewController.o
duplicate symbol _OBJC_CLASS_$_ObjCWorkAppMath in:
/Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppMath.o
/Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppViewController.o
ld: 2 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我试着在计算器所有方案来解决这个错误,它仍然无法正常工作或我不能这样做的权利...
#import "ObjCWorkAppViewController.h"
#import "ObjCWorkAppMath.m"
@interface ObjCWorkAppViewController()
@end
@implementation ObjCWorkAppViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
哪里错了吗?
作为一个规则的拇指,从来没有导入M文件(除非你真的有一个很好的理由) – 2013-03-23 08:26:32
@canpoyrazoğlu:是的,这是很好的建议。也许Xcode不应该提供用于自动完成的.m文件。 – 2013-03-23 08:55:47
是的,我同意。它会造成混乱。有一些角落的情况下,人们可能想包括他们,但这从来就不是一般情况。 – 2013-03-23 08:58:39