MacでC#プログラミング

MacのターミナルでC#のコンパイル・実行を行う方法のまとめ。
(HelloWorldを行いました)

0. 前提

「HomebrewなどでMonoをインストールしてある」 or 「Unityをインストールしてある」
とりあえずMonoが入ってれば大丈夫かと。

1. 適当なディレクトリで test.cs を作成

// test.cs
using System;

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

2. mcs というC#コンパイラで test.cs をコンパイル

$ mcs test.cs

もし mcs が not found と言われる場合は、パスがちゃんと通ってない可能性がある。(かくいう自分もそうでした)今回はこのページを参考にしました。Unity経由でMonoを入れた人はUnity.appの中にmcsがあるっぽいので、そこまでのパスを通してあげれば大丈夫。
たぶんmcsは /Applications/Unity/Unity.app/Contents/Frameworks/MonoBleedingEdge/bin/ にあるので(ちゃんと自分でも確認してみてください)、

$ PATH=$PATH:/Applications/Unity/Unity.app/Contents/Frameworks/MonoBleedingEdge/bin/

上記をターミナルで入力すればパスが通って mcs が not found ではなくなると思います。

ちなみに上記コマンドはターミナルを再起動する度に入力をする必要があります。
そんなのめんどすぎて無理って人は、ルートディレクトリにある .bash_profile に下記のものを書き加えておくといいです。(#で始まってる一行はコメント文)

# 'mcs' path
export PATH=$PATH:/Applications/Unity/Unity.app/Contents/Frameworks/MonoBleedingEdge/bin/

書き加えたら、その変更を適用するためにターミナルを再起動してください。改めてパスを通さなくても大丈夫になってるはずです。

3. monoでtest.exeを実行

手順2がうまくいけば test.exe が生成されてるはず。

$ mono test.exe

これで実行できます。
Hello, world! と表示されれば成功。

 

お疲れ様でした。


コメントを残す