リンク段階でのシンボルの重複については、ここで何度か取り上げました。しかし、この場合の答えは見つかりませんでした:
Objective-C アプリ用に C++ で記述された独自のライブラリがあります。lib から C++ ロジックを使用するには、ファイル拡張子を から.mに変更する必要があります.mm。複数の.mmファイルが必要なときに問題が発生します。リンカは私にエラーduplicate symbol __instance in:とld: 1 duplicate symbol for architecture i386.
__instanceC++ コードのどこにもシンボルを使用または宣言していません。- このエラーを取得するために C++ コードを使用またはインポートする必要はありません。
- ソースのコンパイル段階で重複ファイルはありません
- プロジェクト内のすべてのターゲットは、i386 ではなく、iOS アーキテクチャを設定しています