Monoをsvn trunkのソースからビルドしてインストールする手順。 ビルドに使用した環境はUbuntu 10.04 Desktop。 本文は2010年05月02日時点のバージョンに基づく。
なお、現在はGitHubに移行しているため、svn://anonsvn.mono-project.com/からはチェックアウト出来なくなっている。 GitHubのソースからビルド・インストールする手順はMono のビルド・インストール (Git master)。
ここで紹介する手順はMono本体といくつかのアセンブリをインストールするためのもの。 ディストリビューションが提供しているバージョンのMonoと共存できるようにするため、/opt/mono/trunkにインストールする。
1つの環境に複数のMonoをインストールする方法についてはParallel Mono Environments - Monoで詳しく解説されている。
ビルドにはgcc、libtool、autotools、gettext、pkg-config等が必要になるので、あらかじめインストールしておく必要がある。
libgdiplus
依存するパッケージのインストール
ソースのチェックアウトとautogen、configure
configureの結果例。
ビルド、インストール
configureした結果に問題が無ければmake、make installする。
正しくインストールできたか確認する。
Mono本体(コンパイラ、クラスライブラリ)
依存するパッケージのインストール
ソースのチェックアウトとautogen、configure
.NET Framework 4のアセンブリを含めない場合は、--with-profile4=noを指定する。
configureの結果例。
ビルド、インストール
コンパイルする環境にMonoおよびmcsがない場合は、makeする前に最新のMonoLite(Mono Daily Packages)を取得しておく。
なお、このコマンドでから取得したバイナリでビルドできない場合は、以下の5つのバイナリを別の環境からコピーするなどして../mcs/class/lib/monolite/に配置すればビルドできるようになる。
- mscorlib.dll
- System.dll
- System.Xml.dll
- Mono.Security.dll
- mcs.exe
準備が整ったら、make、make installする。
動作確認
新しくMonoをインストールした場合
mono -Vでmonoが動作することを確認する。
既に別のバージョンのMonoが存在する環境にインストールした場合
新しく/opt/monoにインストールしたMonoを参照できるように、環境変数を設定するスクリプトを用意しておく。 参考: Parallel Mono Environments - Mono
まずmono -Vで既にインストールされているmonoが動作することを確認する。
続いて、先ほど用意したスクリプトを読み込んだあとでmono -Vを実行し、新しくインストールしたmonoが動作することを確認する。
GAC
gacutil -lでアセンブリがGACに登録されていることを確認する。 GACのパスを明示的に指定する場合は-rootオプションで指定する(例えばgacutil2 -l -root /usr/lib/など)。
gmcs (2.0ランタイム用C#コンパイラ)
gmcs --aboutでgmcsのバージョンを確認する。
dmcs (4.0ランタイム用C#コンパイラ)
C# 4.0よりサポートされる機能を含むコードがコンパイル出来るかどうか試す。
csharp(C#シェル)
csharpシェルが動作するか確認する。
その他のアセンブリ・ライブラリ
gluezilla
依存するパッケージのインストール。
ソースのチェックアウトとautogen、configure。
configureの結果例。
問題が無ければ、make、make installする。
gluezillaの動作テスト
gluezillaが動作するかテストしたい場合は、tests/browser/にあるテスト用のアプリケーションをビルド・起動して動作を確認できる。
まず、ldconfigでライブラリのリンク・キャッシュを再構成する。
次に、テスト用のMakefileで指定されているアセンブリ参照の誤りを修正する。
修正後、make testでテスト用のアプリケーションが起動する。 起動するとウィンドウが開くので、アドレスバーに適当なURLを入れてページが表示されるか確認する。
Mono.Addins
gtk-sharp-2.0が必要になるので、別途ビルドするかパッケージをインストールする。
ソースのチェックアウトとautogen、configure。
configureの結果例。
問題が無ければ、make、make installする。
mono-tools
gtk-sharp-2.0, gnome-sharp(2.0または3.14)が必要になるので、別途ビルドするかパッケージをインストールする。
また、オプションで以下のパッケージも参照されるので、必要ならインストールしておく。
- gecko-sharp
- gtkhtml-sharp
- webkit-sharp
ソースのチェックアウトとautogen、configure。
configureの結果例。
問題が無ければ、make、make installする。
リビジョン156593の時点では、Gendarmeとgsharpがビルドできないようなので、以下の箇所を修正した。
gsharpの方はこの修正で正しく動作するか未検証。
mono-debugger
以下は2010年04月20日現在のバージョンでの手順。
依存するパッケージのインストール。
ソースのチェックアウトとautogen、configure。
configureの結果に問題が無ければ、make、make installする。
メモ
Ubuntu 9.10 Server用
Ubuntu 9.10 Serverインストール直後の状態から、JITコンパイラ・C#コンパイラ・ランタイム(.NET 4含まず)のみをビルド・インストールする手順。 2009年11月01日現在のバージョンに基づく。