「Mono」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (カテゴリーを開発からフレームワークに変更) |
(→トラブルシューティング: 同期) |
||
(同じ利用者による、間の2版が非表示) | |||
5行目: | 5行目: | ||
== インストール == |
== インストール == |
||
− | Mono は |
+ | Mono は {{Pkg|mono}} パッケージで[[インストール]]することができます。 |
− | VisualBasic.Net のサポートが必要な場合は |
+ | VisualBasic.Net のサポートが必要な場合は、{{AUR|mono-basic}} パッケージで VisualBasic.Net インタプリタを[[インストール]]してください。 |
MonoDevelop はプロジェクトの実行時に [[xterm]] を呼び出します。コンソールアプリケーションを作成するときは、インストールしてください。 |
MonoDevelop はプロジェクトの実行時に [[xterm]] を呼び出します。コンソールアプリケーションを作成するときは、インストールしてください。 |
||
43行目: | 43行目: | ||
== 開発 == |
== 開発 == |
||
− | Mono/C# の開発を始めるのはとても簡単です。 |
+ | Mono/C# の開発を始めるのはとても簡単です。{{AUR|monodevelop-git}} パッケージで [http://monodevelop.com/ MonoDevelop IDE] を[[インストール]]しましょう。 |
+ | |||
+ | もしくは {{AUR|rider}} IDE をインストールして使うこともできます。 |
||
API ドキュメントブラウザやテスト・開発ツールが欲しい場合は {{Pkg|mono-tools}} をインストールしてください。 |
API ドキュメントブラウザやテスト・開発ツールが欲しい場合は {{Pkg|mono-tools}} をインストールしてください。 |
||
54行目: | 56行目: | ||
=== Mono バイナリを直接実行しようとした時にエラー: "cannot execute binary file" === |
=== Mono バイナリを直接実行しようとした時にエラー: "cannot execute binary file" === |
||
− | Mono の [[ |
+ | Mono の [[Java の binfmt_misc|binfmt_misc]] ハンドラがセットアップされていません。詳しくは [http://www.mono-project.com/Guide:Running_Mono_Applications#Registering_.exe_as_non-native_binaries_.28Linux_only.29 Mono Project ウェブサイト] で説明されています。 |
これを修正するには、{{ic|systemd-binfmt}} サービスを[[デーモン|再起動]]してください。 |
これを修正するには、{{ic|systemd-binfmt}} サービスを[[デーモン|再起動]]してください。 |
||
61行目: | 63行目: | ||
{{ic|mozroots --import --ask-remove}} を実行して mono の証明書をアップデートしてみてください。{{ic|mozroots}} は mono パッケージに含まれています。 |
{{ic|mozroots --import --ask-remove}} を実行して mono の証明書をアップデートしてみてください。{{ic|mozroots}} は mono パッケージに含まれています。 |
||
+ | |||
+ | === F# のビルド時にエラー: "System.TypeInitializationException: The type initializer for 'System.Console' threw an exception" === |
||
+ | |||
+ | mcs で fsharp をビルドしようとしたときに発生するバグです。{{ic|1=export TERM=xterm}} を使うことで回避できます。詳しくは [https://github.com/mono/mono/issues/6752] を参照。 |
||
== 参照 == |
== 参照 == |
||
67行目: | 73行目: | ||
* [http://mono-project.com/Monkeyguide Mono ハンドブック] |
* [http://mono-project.com/Monkeyguide Mono ハンドブック] |
||
* [http://go-mono.org/docs Mono の API リファレンス] |
* [http://go-mono.org/docs Mono の API リファレンス] |
||
− | * [http://www.ecma-international.org/publications/standards/ECMA-334.HTM ECMA-334: C# |
+ | * [http://www.ecma-international.org/publications/standards/ECMA-334.HTM ECMA-334: C# 言語仕様] |
* [http://www.ecma-international.org/publications/standards/ECMA-335.HTM ECMA-335: Common Language Infrastructure (CLI)] |
* [http://www.ecma-international.org/publications/standards/ECMA-335.HTM ECMA-335: Common Language Infrastructure (CLI)] |
||
* [http://www.mono-project.com/Guide:Running_Mono_Applications Instructions for running Mono applications] |
* [http://www.mono-project.com/Guide:Running_Mono_Applications Instructions for running Mono applications] |
2018年3月29日 (木) 21:57時点における最新版
Mono は C# と CLR のオープンソースでクロスプラットフォームの実装で Microsoft.NET とバイナリ互換があります。
インストール
Mono は mono パッケージでインストールすることができます。
VisualBasic.Net のサポートが必要な場合は、mono-basicAUR パッケージで 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# の開発を始めるのはとても簡単です。monodevelop-gitAUR パッケージで MonoDevelop IDE をインストールしましょう。
もしくは riderAUR 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 パッケージに含まれています。
F# のビルド時にエラー: "System.TypeInitializationException: The type initializer for 'System.Console' threw an exception"
mcs で fsharp をビルドしようとしたときに発生するバグです。export TERM=xterm
を使うことで回避できます。詳しくは [1] を参照。