openSUSE 11.3 に最新版の mono をインストールするには
openSUSE は Novell 社 が提供している Linux ディストリビューションです。今回は現時点での最新版である openSUSE 11.3 上に最新の mono をインストールしてみます。
リポジトリの追加
インストール直後、リポジトリ設定は以下のようになっていたのですが、一旦、これを削除します。パッケージやリポジトリの操作は openSUSE のパッケージマネージャである "zypper" を使って行ないます。
| > zypper service-list
# | Alias | Name | Enabled | Refresh | Type
--+-------------------------+-------------------------+---------+---------+------
1 | openSUSE-11.3 11.3-1.82 | openSUSE-11.3 11.3-1.82 | Yes | No | yast2
> sudo zypper rr 1
> zypper service-list
No services defined. Use the 'zypper addservice' command to add one or more services.
|
次に改めて openSUSE のリポジトリと mono のリポジトリを追加します。
| > sudo zypper addrepo --check --name 'openSUSE-11.3-mono-stable' http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.3 mono-stable
> sudo zypper addrepo --check --name 'openSUSE-11.3-Update' http://download.opensuse.org/distribution/11.3/repo/oss/ repo-oss
> sudo zypper addrepo --check --name 'openSUSE-11.3-Update' http://download.opensuse.org/distribution/11.3/repo/non-oss/ repo-non-oss
> sudo zypper addrepo --check --name 'openSUSE-11.3-Update' http://download.opensuse.org/update/11.3/ repo-update
|
この時点で登録されたリポジトリは以下のようになりました。
| > zypper service-list
# | Alias | Name | Enabled | Refresh | Type
--+--------------+---------------------------+---------+---------+-------
1 | mono-stable | openSUSE-11.3-mono-stable | Yes | No | rpm-md
2 | repo-non-oss | openSUSE-11.3-Update | Yes | No | yast2
3 | repo-oss | openSUSE-11.3-Update | Yes | No | yast2
4 | repo-update | openSUSE-11.3-Update | Yes | No | rpm-md
|
mono のインストール
次に mono をインストールします。ASP.NET の動作も視野に入れている為、Apache で ASP.NET を動作させるモジュールである mod_mono もインストールしておきます。
| sudo zypper --non-interactive install mono-core mod_mono
|
特にエラーが出なければ、インストール後の確認作業へ進みます。
インストール後の確認
mono のコンパイラである "mcs" がインストールされていることと合わせて、バージョンを確認します。現時点では 2.8.0.0 が最新でした。
| > mcs --version
Mono C# compiler version 2.8.0.0
|
続けて、JIT コンパイラである "mono" も確認します。
| > mono --version
Mono JIT compiler version 2.8 (tarball Tue Oct 5 20:42:06 UTC 2010)
Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: debugger softdebug
LLVM: yes(2.8svn-mono)
GC: Included Boehm (with typed GC and Parallel Mark)
|
最後に、実際にソースコードをコンパイルし、実行出来るかまで確認します。以下の内容を "HelloWorld.cs" という名前で保存します。
| using System;
class HelloWorld
{
public static void Main(string[] args)
{
Console.WriteLine("Hello,World!");
}
}
|
"mcs" でコンパイル後、"mono" で実行します。
| > mcs HelloWorld.cs
> mono HelloWorld.exe
Hello,World!
|
上記のように「Hello,World!」と表示されれば確認完了です。