#手元でちょっとしたC#プログラムを実行したい
最近のエディタは再生ボタンを押すだけで自動でコンパイルして実行までを行ってくれるので、手動でコンソールからコマンドを叩いてコンパイルすることの必要性はほとんどありませんが、学習のためにサンプルのクラスだけ作って実行結果を見たい時などは有用そうなので、手動コンパイル実行の手順をまとめてみました。
この記事はその記録になります。
DOS/Vとかの頃からプログラマだった人には当たり前すぎる内容かもしれません。
しかし、最近のゆとり開発環境に慣れきった自分は手動コンパイルをやったことがなかったので実際に試して見ました。
といってもMONOを使えば簡単にC#のコードをコンパイルして実行できました。
##C#のコンパイラ(Mono)をインストール
###Monoとは
Ecma標準に準じた.NET Framework互換の環境を実現するためのオープンソースのソフトウェア、C#のコンパイラが含まれています
Mono, the open source development platform based on the .NET Framework, allows developers to build cross-platform applications with improved developer productivity.
C# Compiler - Mono’s C# compiler is feature complete for C# 1.0, 2.0, 3.0, 4.0 and 5.0 (ECMA). A good description of the feature of the various versions is available on Wikipedia.
###インストール
公式のDownloadから.pkgファイルをダウンロードしてインストールする方法もありますが、Homebrewでもインストール可能です。ターミナルで下記のコマンドを実行してみてください。
Homebrewとは?
Mac OS Xオペレーティングシステム上でソフトウェアの導入を単純化するパッケージ管理システム
$ brew install mono
###MONOについて詳しく知りたい人
公式サイトへ
##コードを書いて保存する
テキストエディタかvimコマンドなどでhello.cs
ファイルを作成し、保存する
using System;
public class HelloWorld
{
static public void Main ()
{
Console.WriteLine ("Hello Mono World");
}
}
##コンパイルと実行
hello.csを保存したディレクトリで下記を実行
$ mcs hello.cs
#結果 -> [1]+ Done mcs hello.cs
$ mono hello.exe
#結果 -> Hello Mono World
mcs:コンパイルコマンド
mono:実行コマンド
##複数ファイルのコンパイル
ファイルが複数に分かれている場合はスペースで区切って並べて指定するか、*.csで一括指定出来ます。出力されるexeファイルの名前は-outオプションを使うことで変更可能です。
(フォルダが階層になっている場合とか外部ライブラリ使う場合どうすればいいかわかってません)
$ mcs hello1.cs hello2.cs -out:hello.exe
$ mcs *.cs -out:hello.exe
##参考にさせていただいたサイト
https://nkmk.github.io/blog/mac-c-sharp-compile/
[http://qiita.com/omega999/items/6f65217b81ad3fffe7e6]
(http://qiita.com/omega999/items/6f65217b81ad3fffe7e6)