MacOS X で C# を使う (Mono Project)

さくっとできるかと思いきや,意外に罠がいくつかあったのでメモ.

この状態で,http://mono-project.com/Mono_Basics ここにある Console 用 Hello World までは動いた.Windows.Form を出そうとすると(うちでは)次のエラーが出てうごかなかった.

error CS8027: Couldn't run pkg-config: ApplicationName='pkg-config', CommandLine='--libs gtk-sharp-2.0', CurrentDirectory=''

このままではうまくいかなくて,次の作業が必要だった.

ここまでやると,今度は次のエラーがでた.

Package dotnet was not found in the pkg-config search path.
Perhaps you should add the directory containing `dotnet.pc'
to the PKG_CONFIG_PATH environment variable
No package 'dotnet' found
error CS8027: Error running pkg-config. Check the above output.

さらに以下の作業をした.

  • 環境変数 PKG_CONFIG_PATH に dotnet.pc というファイルがあるフォルダを指定する.デフォルトでは /Library/Frameworks/Mono.framework/Versions/2.x.x/lib/pkgconfig あたりにあるもよう(2.x.x はバージョンに依存).みつからなければ find / -name dotnet.pc とかやって探せば OK
  • ~/.bashrc あたりに export PKG_CONFIG_PATH=/Library/Frameworks/Mono.framework/Versions/2.x.x/lib/pkgconfig みたいに設定を書く.
  • ターミナルを再起動する(か,コマンドラインで上記 export を実行する)

とりあえずこれで動いた.mono Window.exe とかやってから,ウィンドウが表示されるまでに 1 分くらいかかった(最初だけ).二回目からはすぐ表示された.