Mono

提供: ArchWiki
移動先: 案内検索

Mono は C# と CLR のオープンソースでクロスプラットフォームの実装で Microsoft.NET とバイナリ互換があります。

インストール

Mono は公式リポジトリmono パッケージでインストールすることができます。

VisualBasic.Net のサポートが必要な場合は、同じく公式リポジトリの、mono-basic パッケージで VisualBasic.Net インタプリタをインストールしてください。

MonoDevelop はプロジェクトの実行時に xterm を呼び出します。コンソールアプリケーションを作成するときは、インストールしてください。

Mono アプリケーションの実行

Mono バイナリは mono を手動で呼び出すことで実行できます:

$ mono programsname.exe

ネイティブバイナリと同じように、Mono バイナリを直接実行することも可能です:

$ chmod 755 exefile.exe
$ ./exefile.exe

Mono のテスト

新しいファイルを作成:

test.cs
using System;

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

そして実行:

$ mcs test.cs
$ mono test.exe
Hello world!

開発

Mono/C# の開発を始めるのはとても簡単です。公式リポジトリにあるパッケージ monodevelopmonodevelop-debugger-gdb[リンク切れ: 置換パッケージ: monodevelop]MonoDevelop IDE とデバッガーサポートをインストールしましょう。

API ドキュメントブラウザやテスト・開発ツールが欲しい場合は mono-tools をインストールしてください。

トラブルシューティング

cannot execute "path/to/your/binary" file name has not been set

MonoDevelop はプロジェクトの実行時に xterm を起動するので xterm をインストールしてください。

Mono バイナリを直接実行しようとした時にエラー: "cannot execute binary file"

Mono の binfmt_misc ハンドラがセットアップされていません。詳しくは Mono Project ウェブサイト で説明されています。

これを修正するには、systemd-binfmt サービスを再起動してください。

TLS ハンドシェイク (もしくは同じような証明書の) エラー

mozroots --import --ask-remove を実行して mono の証明書をアップデートしてみてください。mozroots は mono パッケージに含まれています。

参照