duplicate symbol _leagueTableLoaded in:
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTGlobalResultsViewController.o
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTJumpToMeViewController.o
duplicate symbol _showGLobalCompany in:
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTGlobalResultsViewController.o
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTJumpToPositionViewController.o
duplicate symbol _leagueTableLoaded in:
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTGlobalResultsViewController.o
/Users/Brendan/Library/Developer/Xcode/DerivedData/2013-dbhrwzgxgwhfbqatgqpfrmqyucyu/Build/Intermediates/2013.build/Debug-iphonesimulator/2013.build/Objects-normal/i386/LTJumpToPositionViewController.o
ld: 3 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我只是在尝试构建模拟器时才在xcode中得到上述错误(在我可以构建的任何iOS设备上都没有错误)。我有三个班级:
1.LTGlobalResultsViewController 2.LTJumpToMeViewController 3.LTJumpToPositionViewController
这三个都是在xcode中创建的,但是2和2都是3已在xcode之外修改,然后重建。
@property bool leagueTableLoaded在这三个标题中定义。它被声明为:
@property bool leagueTableLoaded;
导致此错误的确切原因是什么?我尝试过以下方法:
我尝试在不同的类中重命名leagueTableLoaded,但这并没有解决它。
我尝试在library / developer / xcode文件夹中手动删除我的派生数据文件。
根据其他问题,我检查过我是否导入.m文件。不是这种情况。 Apple Mach-O Linker error ("duplicate symbol")
还有其他建议或建议吗? 谢谢, 詹姆斯
附加:根据要求,请查找我的.h和.m文件中引用leagueTableLoaded的所有摘录或我在尝试绕过此错误时创建的任何变体:
LTJumpToMeViewController.h
@property bool leagueTableLoadedMe;
LTJumpToMeViewController.m
@implementation LTJumpToMeViewController
bool leagueTableLoaded = false;
LTGlobalResultsViewController.h
@property bool globalLeagueTableLoaded;
LTGlobalResultsViewController.m
@implementation LTGlobalResultsViewController
bool leagueTableLoaded = false;
LTJumpToPositionViewController.h
@property bool leagueTableLoadedPos;
LTJumpToPositionViewController.m
@implementation LTJumpToPositionViewController
bool leagueTableLoaded = false;
如果需要,我可以提供更多信息!
答案 0 :(得分:6)
对我来说,当我心不在焉地包含一个.m文件而不是.h时出现重复符号错误(为什么Xcode的autosuggest甚至会显示我.m文件?!)
答案 1 :(得分:0)
最后,这是由LTGlobalResultsViewController.m和LTJumpToPositionViewController.m中定义的leagueTableLobo bool引起的。
从其中一个中删除它修复了问题。虽然我不确定为什么它首先在那里!希望这能帮助遇到同样问题的其他人!詹姆斯
答案 2 :(得分:0)
Xcode错误“Duplicate Symbol”导致Apple Mach-O链接器错误是由Project中的重复符号引起的。避免错误的步骤
这对我有用。希望它有所帮助
答案 3 :(得分:0)
在第二个视图控制器中,您错误地 #import" First.m" ,检查它必须是 first.h 文件所以用 first.h 替换它。它为我工作。