---
slug: "duplicatesymbolのリンカエラーが出たり出なかったり"
title: "duplicate symbol のリンカエラーが出たり出なかったり"
description: "\n\n\nXcode で、iOS アプリをビルドした時"
url: "https://www.ytyng.com/blog/duplicatesymbolのリンカエラーが出たり出なかったり"
publish_date: "2015-08-07T01:49:18Z"
created: "2015-08-07T01:49:18Z"
updated: "2026-02-27T11:08:06.772Z"
categories: ["iOS"]
keywords: ""
featured_image_url: "https://media.ytyng.com/resize/20230812/12f196ebb1e64a8880502f5455e2fbb9.png.webp?width=768"
has_video: false
has_music: false
video_urls: []
music_urls: []
lang: "ja"
---

# duplicate symbol のリンカエラーが出たり出なかったり

<div class="document">


<p>Xcode で、iOS アプリをビルドした時</p>
<pre class="literal-block">duplicate symbol _hogehoge in:
  /Users/................../Xxxx.framework/Xxxx(Xxxx.o)
  /Users/................../Xxxx.framework/Xxxx(Xxxx.o)
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
</pre>
<p>のようなエラーが環境によって出たり出なかったりする時</p>
<p>プロジェクトのページ → TARGETS → Build Settings →
Linking → Other Linker Flags の、 -all_load が関係しているかもしれません。</p>
<p>-all_load がつくと、extern xxxx なんかを全部最初に評価して?(←自信なし)、シンボル名が重複したらエラーが出てビルドできなくなります。</p>
<p>ライブラリを作る時は、 ( -ObjC と ) -all_load を入れてビルドしてみて動作確認する。</p>
</div>
