Skip to content

openSUSE 11.3 に最新版の mono をインストールするには

openSUSENovell 社 が提供している Linux ディストリビューションです。今回は現時点での最新版である openSUSE 11.3 上に最新の mono をインストールしてみます。

リポジトリの追加

インストール直後、リポジトリ設定は以下のようになっていたのですが、一旦、これを削除します。パッケージやリポジトリの操作は openSUSE のパッケージマネージャである "zypper" を使って行ないます。

1
2
3
4
5
6
7
> 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 のリポジトリを追加します。

1
2
3
4
> 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

この時点で登録されたリポジトリは以下のようになりました。

1
2
3
4
5
6
7
> 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 もインストールしておきます。

1
sudo zypper --non-interactive install mono-core mod_mono

特にエラーが出なければ、インストール後の確認作業へ進みます。

インストール後の確認

mono のコンパイラである "mcs" がインストールされていることと合わせて、バージョンを確認します。現時点では 2.8.0.0 が最新でした。

1
2
> mcs --version
Mono C# compiler version 2.8.0.0

続けて、JIT コンパイラである "mono" も確認します。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
> 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" という名前で保存します。

1
2
3
4
5
6
7
8
9
using System;

class HelloWorld
{
  public static void Main(string[] args)
  {
    Console.WriteLine("Hello,World!");
  }
}

"mcs" でコンパイル後、"mono" で実行します。

1
2
3
> mcs HelloWorld.cs
> mono HelloWorld.exe
Hello,World!

上記のように「Hello,World!」と表示されれば確認完了です。