错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)xcode 错误?
Posted
技术标签:
【中文标题】错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)xcode 错误?【英文标题】:error: linker command failed with exit code 1 (use -v to see invocation) xcode error? 【发布时间】:2015-07-21 14:49:50 【问题描述】:我刚刚关注了一个关于创建 Flappy Bird 游戏的 Youtube 视频,一切都很顺利,直到我在 ViewController.m 中编写了代码,我意识到我遇到了一个非常烦人的错误,我的代码看起来与视频的代码一模一样我猜。
duplicate symbol _HighScoreNumber in:
/Users/SRaheem/Library/Developer/Xcode/DerivedData/Flappy_Kurd-ajkqjbpuoredvudzovmfygqfuasr/Build/Intermediates/Flappy Kurd.build/Debug-iphonesimulator/Flappy Kurd.build/Objects-normal/x86_64/Game.o
/Users/SRaheem/Library/Developer/Xcode/DerivedData/Flappy_Kurd-ajkqjbpuoredvudzovmfygqfuasr/Build/Intermediates/Flappy Kurd.build/Debug-iphonesimulator/Flappy Kurd.build/Objects-normal/x86_64/ViewController.o
ld: 1 duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
【问题讨论】:
从 Game.m 和 ViewController.m 发布您的代码。或者在这些文件中搜索“HighScoreNumber”,错误说它是在同一范围内的两个地方定义的。 这里是 Game.m pastie.org/private/aclehtrzjw3bbaklqldbog,这里是 ViewController.m pastie.org/private/zotfnbievnls9jjpnpi8ta 正如木马所说,HighScoreNumber 可能在 game.h 和 ViewController.h 中都声明了。您需要删除其中一个声明或将其标记为“extern”。如果您没有完全删除,则需要在 Game.m 和 ViewController.m 文件中导入带有剩余声明的头文件。 ***foe 的回答是正确的。 【参考方案1】:您可能已经在 Game.m
和 ViewController.m
包含的头文件中添加了变量 HighScoreNumber
。
此声明需要更改为extern int HighScoreNumber;
(或任何类型),并且需要在.m
文件中定义(例如在Game.m
中)。
【讨论】:
以上是关于错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)xcode 错误?的主要内容,如果未能解决你的问题,请参考以下文章
clang:错误:链接器命令失败,退出代码为 1,react-native