不惑にしてまだ何者でもない者のブログ

Arduino関連、Raspberry Pi関連、プログラミング学習

Ubuntu20.04にC#の開発環境(monoとmonodevelop)を構築してみた

2021-04-05 21:31:46 | Ubuntu
そういえば、C#ってWindowsを作ってるマイクロソフトが作ったプログラミング言語だから、
そもそもLinuxでC#のプログラミングってできるんだろうか?
できるとして、Ubuntuの場合、どうやって開発環境を整備するんだろうか?

と思って、ググってみると、
どうやらLinuxでは、monoとかmonodevelopをインストールすれば良さそうなことが分かった。

monoとmonodevelopの公式サイトは、以下の通り。
たぶん、monoがコンパイラーで、monodevelopがIDEなんだろう。

monoパッケージのインストール

まずは、①のサイトを参考に、Monoパッケージをインストールした。
$ sudo apt install gnupg ca-certificates
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
$ echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
$ sudo apt update
$ sudo apt install mono-devel
↑最後は、mono-completeでもいいのかな?

$ mono --version
を実行して、monoがちゃんとインストールされていることを確認した。

あと、この状態でもC#ファイル(*.cs)のコンパイルはできるから、
以下を参考にコンパイルできることも確認。

monodevelopパッケージのインストール

次に②の方のサイトを参考にMonoDevelopをインストールした。
こちらの場合、Ubuntu 18.04までしか書かれていないけど、
たぶん、以下を実行すればOK
sudo apt-get install monodevelop

インストールが完了すると、MonoDevelopというアプリが追加されているので、
アクティビティから起動することができる。

MonoDevelopでコンソールプロジェクトを作成し、デバッグなしで実行をやってみたら、
コンパイルまではうまく行くけど、
MonoDevelop上でexeファイルの実行はエラーが出てうまくいかなかった。

ちなみに、コンパイルされたexeファイルを、
ターミナル上でmono *.exeで実行すれば、問題なく動作した。

もしかすると、MonoDevelopはまだUbuntu 20.04に完全対応していないのかもしれない。