3. C# - FreeBSD にインストール - Hello world !

 
3.1 インストールを確認
3.2 Hello world !
3.3 文字化け発生

3.1 インストールを確認

 インストール時のメッセージを読むと fstab やら loader.conf の更新が必要かと思われるのですが・・・。  参考サイトでは、まんま使えそうに書いてありますので、できるのか確認してみます。  まずは mono が有効になっているか?

> mono -V
Mono JIT compiler version 5.10.1.47 (5.10.1.47 Wed Aug  1 07:39:00 UTC 2018)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       altstack
        Notification:  kqueue
        Architecture:  amd64
        Disabled:      none
        Misc:          softdebug
        Interpreter:   yes
        LLVM:          supported, not enabled.
        GC:            sgen (concurrent by default)

3.2 Hello world !

 下記のソースを書いて
using System;

public class HelloWorld
{
    static public void Main ()
    {
        Console.WriteLine ("Hello Mono World");
    }
}
 ロードモジュールを作成。

mcs ソースファイル名.cs
 少し時間がかかりますが .exe ファイルが作成され、ここまでは順調でした。

3.3 文字化け発生

 実行してみると

./ロードモジュール名.exe
./ロードモジュール名.exe: MZ言佐コ ⅰ・跣・
ョッ韃・・褸蠎 クコ モ・褪 ナマニ 鴃 粃肭・・糒・
ョッ韃・・褸蠎 イコ モ・褪 ナ・ 鴃 胥澵碚・糒・
 なんかエラーメッセージが出ているんでしょうが。  文字化けで読めない・・・。  「FreeBSD 10.1 に mono をインストールし、C# のプログラムをコンパイルする」を読んで納得。  直接起動するんじゃなくて、mono 越し(物腰?)に起動するんですね。

>  mono hello.exe
Hello Mono World
 起動するのに、一瞬の間があります。  よくできた言語ですが・・・重いですねぇ。  ま、とりあえず、動きました。