66 duplicate symbols for architecture arm64というエラーの原因と解決方法

Unityで作成したiOSビルドファイルをXcodeでビルドした際、下記のエラーが出ました。

66 duplicate symbols for architecture arm64

エラーが出た時点でほぼ間違いなくAdMobが原因かな、と思っていました。
実際に原因もAdMob関連だったので、もしAdMobを利用していない(正確にはGoogle関連のフレームワークを利用していない)人で、このエラーが出ている場合はこの記事の解決方法は関係ないかもしれません。

AdMobを利用している人はこのまま読んでもらえればおそらく解決するかと思います。

原因と解決方法

AdMobを利用していたのですが、普段から入れている「GoogleMobileAds.framework」の他に「GoogleUtilities.framework」も入れてしまっていたことが原因でした。

「GoogleUtilities.framework」については使ったことがないので正直どんなフレームワークなのかは知りませんが、エラー文の内容的に「GoogleMobileAds.framework」と一部内容が被っており、エラーとなっていたのでしょう。

今回は「GoogleUtilities.framework」は必要なかったので、これを削除して再ビルドしたら無事ビルドが通りました。

コメント