1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

docker つかってサクッと c# を書きたい。

Last updated at Posted at 2020-04-08

最終目標

  • mono をいれて、c# をサクッと動作させたい。
  • mono というものを知ったので使ってみたかった

1.任意のフォルダを作成する

  • c# のプログラムを置く場所を作成しておく。
  • これ、準備したんだけど、うまく活用できてないので、今度 Dockerfile を作成して活用できるようにする。(次ね、次)
% mkdir mono_project
% cd mono_project

2.dockerを使用して monoを取得する

  • mono のイメージがない場合は、自動的に取得するので待つ。
.console
mono_project % docker run -it mono /bin/bash
  • 無事インストールしできたら、 mono の環境ができる。
  • 環境ができたか、確認する。
# もし、ログインしていない場合はログインしておく
mono_project % docker exec -it 作成したコンテナID /bin/bash
  • mono の version を確認する
root@:/# mono --version
Mono JIT compiler version 6.8.0.96 (tarball Wed Jan 15 10:18:35 UTC 2020)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       altstack
	Notifications: epoll
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug 
	Interpreter:   yes
	LLVM:          yes(610)
	Suspend:       hybrid
	GC:            sgen (concurrent by default)
root@:/# 
  • パッケージ更新
root@:/# apt update
  • vim を入れておこうかな
root@/# apt install vim

3.c# をつくって実行してみる

  • test.cs ファイルを作成し保存する。
  • 今回は、さきに test というフォルダを作成し、その下でファイルを作成している
test.cs
using System
public class HelloWord
{
    static public void Main()
    {
        Console.WriteLine("Hello Mono Word")
    }
}
  • 保存したら、コマンドラインからコンパイルする
  • mcs コマンドでコンパイルが行える。
root@:/test# mcs test.cs
  • コンパイルされているか確認する
  • exe ファイルができていればコンパイル完了。
root@:/test# ls
test.cs  test.exe
  • 実行してみる。
  • mono コマンドで実行できる
root@:/test# mono test.exe
Hello Mono Word

やったー!出力したー(^_^)

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?