ライブラリ libxml2.tbd を使用する xcode コードがあります。この公式ガイドラインに従って、そのコードを Xamarin.ios 内で使用できるスタティック ライブラリ (myProjectLib.a) にする必要がありました。 iOS ライブラリのバインド
問題は、プロジェクトが libxml2 をリンクできないかのように、xamarin プロジェクトのビルド中に未定義のシンボルに関する多くのエラーが発生することです。
エラー MT5210: ネイティブ リンクに失敗しました。未定義のシンボル: _xmlTextWriterFlush。必要なすべてのフレームワークが参照され、ネイティブ ライブラリが適切にリンクされていることを確認してください。
私はこのバインディングを数回成功させましたが、依存関係ライブラリなしでのみでした。しかし、それをリンクするための解決策が必要です。
私がすでに試したこと:
-libxml2.dylib を xcode ライブラリ プロジェクトに追加する (xamarin で同じエラー)
-xcode ライブラリ プロジェクトの他のリンカー フラグに (-libxml2,-lxml2) を追加する (xamarin で同じエラー)
-libxml2 を追加する。 dylib ファイルを xamarin バインディング プロジェクトに、xamarin アプリ プロジェクト リソースを常にコピー オプション付き (xamarin で同じエラー)
最後に試した:
xamarin アプリ プロジェクトの (追加の mtouch 引数) に --gcc_flags="-stdlib=libxml2" を追加すると、名前が無効であるという別のエラーが発生しました
エラー MT5209: ネイティブ リンク エラー: clang: エラー: 引数 '-stdlib=libxml2' の無効なライブラリ名