質問: C#で作成されたWindowsアプリケーションを、Xamarinを使ってMacアプリに変換したいと考えています。 Xamarin StudioをインストールしたMacで、Windowsアプリケーションのソリューションを開き、 ビルドするとexeが作成され、Mono上で動作することは確認できました。 このexeを、Macアプリケーションとして配布する場合、 Monoのランタイムを同梱してインストーラを作成するような機能は、Xamarinにあるのでしょうか? また、実行する際、ターミナルから実行するしかないのでしょうか? 宜しくお願い致します。
回答: Monoランタイムを同梱したインストーラの作成機能は提供されていません。 MacアプリにおけるXamarinは,アプリケーションバンドル(.app)内にランタイムを同梱し,単体で動作するようにビルドする仕組みを提供しています。 これを行いたい場合はXamarin.Mac プロジェクトを作成し,多少コードの移植を行う必要があります。 ご質問の状況ではWindowsのソリューションをそのままビルドされているため,別途ランタイムのインストール無しに動作させる方法はありません。 ターミナルから実行したくない場合は, 1. ブートストラップを含んだバンドルを作成する 2. シェルスクリプトで呼び出す といった方法があります。バンドルを作成するには `mkbundle` ツールを使います。少し古いですが参考までに。 Monoランタイムのライセンスには十分注意なさってください。