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

(Comments)

Xcode で、iOS アプリをビルドした時

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)

のようなエラーが環境によって出たり出なかったりする時

プロジェクトのページ → TARGETS → Build Settings → Linking → Other Linker Flags の、 -all_load が関係しているかもしれません。

-all_load がつくと、extern xxxx なんかを全部最初に評価して?(←自信なし)、シンボル名が重複したらエラーが出てビルドできなくなります。

ライブラリを作る時は、 ( -ObjC と ) -all_load を入れてビルドしてみて動作確認する。

Current rating: 1

Comments

Recent Tweets

  • ytyng

    ytyng @ytyng

    apple developer の、テスト用デバイスのUDIDを1年ごとにチェックして、古い端末を消しちゃうやつ チェックボックスを入れたのを残すのか、消すのかの判断まちがって、全部のUDID消えたわ
    2 months, 2 weeks ago

  • ytyng

    ytyng @ytyng

    うちの会社 TORICO の 代表が今TV出てます #漫画全巻ドットコム #激レアさんを連れてきた
    2 months, 3 weeks ago

  • ytyng

    ytyng @ytyng

    Proofpoint にブロックされているIPアドレスからでも icloud など Apple メールアドレスにメール送信されてもブロックされてない…?
    3 months, 2 weeks ago

Recent Posts

Archive

2020
2019
2018
2017
2016
2015
2014
2013
2012
2011

Categories

Authors

Feeds

RSS / Atom