私はCocoaベースのユニバーサルダイナミックライブラリを持っています。これには、機能をエクスポートしたいスタティックライブラリも含まれています。エクスポートシンボルファイルを使わなければ最新のことはできないようですが、これは私のものです...何とかしてください。私は "Symbols Hidden with default"(GCC_SYMBOLS_PRIVATE_EXTERN、-fvisibility = hidden)の設定を使用していません。 ダイナミックライブラリからベースクラスをエクスポートしようとしたときに、より具体的には、ライブラリに含まれていない派生クラスで、さらに具体的には64ビットビルドでメンバを使用しようとしたときに問題が発生しました: " 未定義のシンボル: 「_OBJC_IVAR _ $ _ PluginBase.fConn」 」 私は、64ビットの変更を認識しています:http://developer.apple.com/library/mac/#releasenotes/Cocoa/RN-ObjectiveC/_index.htmlは、 『64ビットクラスとインスタンス変数のアクセス制御』エクスポートシンボルファイル:Objective C派生クラスメンバ、64ビット
そして、私が追加した場合、もちろん、すべての作品_OBJC_IVAR _ $ _ PluginBase.fConnをエクスポートファイルに...ただし、64ビットビルドの場合のみ、32ビットのものはそのようなことについては知らない: " 未定義のシンボル: から参照 "_OBJC_IVAR _ $ _ PluginBase.fConn"、2つのエクスポートファイルを持っている: -exported_symbol [s_list]コマンドラインオプション 」
唯一の解決策は、別の回避策です。しかし...私はEXPORTED_SYMBOLS_FILE設定に "ビルド設定条件を追加"を使うことはできません。
アイデア(パブリックアクセサメソッドを使用する以外に)