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 を入れてビルドしてみて動作確認する。
コメント