關于duplicate symbols for architecture x86_64錯誤

在項目開發中我們可能會遇到
ld: 2 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation) 這種問題。

  • 分析:大致的意思就是可能在工程中引入了重復的東西
  • 可能觸發這個錯誤的四種情況:
  • 1 在工程中重復導入了某一個類或文件,這一般出現在你添加第三方庫的時候比較多,在不知道的情況下又導入了一次相同的類
1.png
  • 2 import "xxxx.h" 寫成了 import "xxxx.m"
2.png
  • 3 在兩個文件中定義了相同的枚舉,造成了deplicate的錯誤
3.png
  • 4 在繼承協議的時候,Build Settings ?? Other Linker Flags 中添加了 -ObjC
4.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容