Xmarin.Macアプリでネイティブメソッドの動的ロードを含むビルドを行う
ネイティブライブラリの動的ロードを含むXamarin.Mac
アプリを作ろうとしたら、ビルドエラーに遭遇しました。
TL;DR
MMP : error MM5109: Native linking failed with error code 1
というビルドエラーを解決したい。- プロジェクトオプション-「Mac Build」タブ-「追加のmmp引数」に「
--link_flags="-Wl,-undefined,dynamic_lookup"
」と設定する。 Xamarin.Mac
アプリのプロジェクトに、動的ロードで解決するメソッドが含まれていてもビルド出来るようになる。
MMP : error MM5109: Native linking failed with error code 1
Xamarin.Mac
プロジェクトをビルドするとき、C#
のアプリをネイティブアプリに変換する処理が走ります。このとき、C#
の中でネイティブライブラリを動的にロードしているようなプロジェクトは以下のようなエラーでビルドが止まることがあります。_C_FooFunction
、_C_BarFunction
は動的にロードするライブラリの中で宣言されているメソッドです。