链接器命令失败:架构i386的重复符号

时间:2015-01-20 06:28:12

标签: ios xcode swift linker

我在XCode 6上将XYPieChart文件夹添加到我的Swift项目中,但现在我得到了这个“Apple Mach-O Linker Error”:

duplicate symbol _main in:
/Users/ansariha/Library/Developer/Xcode/DerivedData/Juxta-bjrfrzoyetsowibjdgpcxtesgwtg/Build/Intermediates/Juxta.build/Debug-iphonesimulator/Juxta.build/Objects-normal/i386/AppDelegate-EE692B7EDFB39C7A.o
/Users/ansariha/Library/Developer/Xcode/DerivedData/Juxta-bjrfrzoyetsowibjdgpcxtesgwtg/Build/Intermediates/Juxta.build/Debug-iphonesimulator/Juxta.build/Objects-normal/i386/main.o
ld: 1 duplicate symbol for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

下面显示“1 i386架构的重复符号”,然后在下面,错误:“链接器命令失败,退出代码为1(使用-v查看调用)”。 有没有人见过这个?

2 个答案:

答案 0 :(得分:2)

转到xcode中的项目Bundle - >构建阶段 - >编译源代码 检查其中一个文件是否添加了两次。这可能是发生这种情况的情况。 您的AppDelegate可能会被添加两次。删除其中一个。

<强>更新

有些时候您不小心导入.m文件而不是.h文件,因为这个错误来自.h文件。请检查并且如果这不是原因,请执行以下步骤

1-检查目标设置中的构建阶段。

2-转到编译源部分。

3-检查文件是否存在两次或一次。

4-如果文件存在两次,请删除一个。

5-再次建造。

答案 1 :(得分:0)

此错误发生在项目中的文件重复。单击Project Navigator并搜索Duplicate文件。在您的项目重复Appdelegate班级或main。从项目中删除一个文件。

enter image description here