首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成失败,错误为: ld: duplicate symbol _OBJC_CLASS_$_Algebra5FirstViewController

生成失败,错误为: ld: duplicate symbol _OBJC_CLASS_$_Algebra5FirstViewController
EN

Stack Overflow用户
提问于 2012-05-04 00:08:54
回答 27查看 198.9K关注 0票数 73

当我通过iPhone模拟器运行我的应用程序时,突然收到这个错误:

clang:错误:链接器命令失败,退出代码为%1(使用-v查看调用):

ld:.../Algebra5-anwcuftojtxtgkfootneeeqhwztj/Build/Intermediates/Algebra5.build/Debug-iphonesimulator/Algebra5.build/Objects-normal/i386/ExercisesViewController.o和.../Algebra5-anwcuftojtxtgkfootneeeqhwztj/Build/Intermediates/Algebra5.build/Debug-iphonesimulator/PSLE Algebra5.build/Objects-normal/i386/PSLE_Algebra5FirstViewController.o for architecture i386中的重复符号_OBJC_CLASS_$_Algebra5FirstViewController

这都是关于什么的?

EN

回答 27

Stack Overflow用户

回答已采纳

发布于 2012-05-04 00:13:49

看起来Algebra5FirstViewController类被多次编译了。

您能确保.m和.mm在您的Xcode项目源代码中只包含一次吗?您还可以通过检查编译日志(最后一个图标在右侧,断点图标旁边)来确认这一点,并确认它只编译了一次。

此外,如果这个类是您链接到的库的一部分,并且您有一个同名的类,那么您可能会遇到相同的错误。

最后,您可以尝试清理和重建,以防旧的目标文件仍然存在,并且在编译的文件中有一些垃圾。以防万一..。

编辑

我还注意到在文件中对ExercisesViewController进行了第二次引用。也许这个文件里有什么东西。您#导入了Algebra5FirstViewController文件而不是.h,或者ExercisesViewController具有@implementation (Algebra5FirstViewController)而不是@implementation (ExercisesViewController),或者此文件中存在一些垃圾文件,将使用清理重建进行清理。

票数 67
EN

Stack Overflow用户

发布于 2012-05-04 00:14:01

如果在“构建阶段”中目标的“编译源”部分多次引用相同的.m文件,就会发生这种情况。删除重复的条目,您就可以正常工作了。

票数 51
EN

Stack Overflow用户

发布于 2012-07-12 03:37:49

在头文件中声明const * NSString (错误地)而不是在实现文件中(正确地)也有这个问题

票数 30
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10435213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档