提问人:Hanz Cheah 提问时间:4/5/2018 最后编辑:Hanz Cheah 更新时间:10/7/2023 访问量:19752
1 个重复符号用于架构x86_64
1 duplicate symbol for architecture x86_64
问:
我不确定我做错了什么。
我将项目文件夹移动到另一个文件夹,并将备份文件夹复制到桌面。
我尝试打开备份项目并构建,但收到链接器错误。
因此,我决定删除备份文件夹,并将项目文件夹移回桌面。我无法再编译并收到以下错误。
Showing Recent Issues clang: error: linker command failed with exit code 1 (use -v to see invocation)
duplicate symbol _main in:
/Users/BRO/Library/Developer/Xcode/DerivedData/SFITNESS-flzvwdymttxhducvwvmhpuaqfzhj/Build/Intermediates.noindex/SFITNESS.build/Debug-iphonesimulator/SFITNESS.build/Objects-normal/x86_64/main-90EC778DD760FD57.o
/Users/BRO/Library/Developer/Xcode/DerivedData/SFITNESS-flzvwdymttxhducvwvmhpuaqfzhj/Build/Intermediates.noindex/SFITNESS.build/Debug-iphonesimulator/SFITNESS.build/Objects-normal/x86_64/main-F627C2B37F247040.o
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
无派生数据文件夹
还是一样
1. 我打开了 Derived Data 文件夹并删除了其中
的所有内容 2.我删除了所有模拟器
3 中的所有项目。我重新启动了 xCode,清理并构建
将项目添加到 GitHub 中
答:
如何获得derived data
- 打开 Xcode。
- 打开 Xcode 偏好设置 (
Cmd + ,
) - 选择位置选项。
现在你有场景,现在点击点,如下图所示。
您的派生数据现在已打开(建议您在 Finder 左侧菜单中添加驱动器数据)。删除驱动器数据中的任何内容。
- 现在从模拟器中删除您的项目。
- 清理并生成项目。
如果您仍然遇到问题,请告诉我们,以便我们为您提供相应的帮助。
评论
您需要为项目添加必要的框架。检查所有第三方框架并搜索其所需的框架以获得支持。例如,如果你添加,那么你需要,等等框架。缺少一些第三方框架需要的框架。google analytic
add CoreData
Foundation
或者你可以——
- 按下 或 进行清理,然后退出 Xcode。
"Cmd + Shift + K"
shift + cmd + alt + k
删除缓存 Run in terminal
"rm -rf ~/Library/Developer/Xcode/DerivedData"
打开项目并重新生成它
Linker command failed with exit code 1
- 要解决此错误,请按 或 这将为您完成工作。我也有同样的问题,但使用这条线解决了。希望这能解决您的问题。"Cmd + Shift + K"
shift + cmd + alt + k
项目的输出 -
评论
我已经从 github 克隆了您的项目,我发现该文件在 中重复,您可以删除其中一个,您的项目将正常工作。main.m
SFITNESS
CERangeSlider
duplicate symbol _main
您有两个 main.m 文件,并且函数 main() 发生冲突。
只需删除 CERangeSlider 下的 main.m,它应该可以工作。
评论