ios-ld: 1 duplicate symbol for architecture arm64报错处理

如题所述

第1个回答  2022-07-18
这个bug只要开发一段时间的ios开发差不多都遇到过。现在归纳整理一下处理方法以供参考。

分析错误:duplicate symbol这个两个单词是关键,duplicate是重复重叠的意思,symbol是符号的意思。那么这个编译bug就有着眼点了,就是在工程中引入重复的东东。

一、第一种情况,也是常常遇见的

处理方法很简单,那个文件.o报错,直接搜那个文件,多的删除

二、第二种情况,遇见不多但是也存在(存在即合理,那就是马虎)

处理方法就不用说了。

三、第三种情况,就是这次我遇到一个问题

OC中创建一个函数的有正规常用的

也有非常规的

第二种这样式的定义函数,基本上是全工程唯一的,也就是说如果在其他文件中也定义这么一个函数,那么不好意思,肯定会报出上面报错。

处理方法:[编译报错会将两个或者多个冲突的文件列出来]给其中相同符号整成不一样就可以。

日常积累,希望能帮助到你!!!