0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ubuntu上でF#の環境を構築してみた

Posted at

初めに

最近, 個人的に色々な環境を試しています. 当方Windowsしか扱ったことが無いものの, Linuxを使用したいという憧れが強くなり, WSL2のUbuntu上でF#の環境を構築してみました.

なお, 今回は最近個人的に学習中のF#を使用しますが, .NETなのでほとんどそのままC#にも転用できます.

手順

  • Ubuntuのバージョン確認
  • .NET環境のインストール
  • F#ソリューション作成
  • ついでに個人的好みのコード

Ubuntuのバージョン確認

"/home/[user name]"にて, 以下のコマンドを入力

cat /etc/os-release

image.png

画像のVersionは22.04と確認できる.

.NET環境のインストール

Ubuntuのバージョンが分かったらMicrosoftの公式ページへGo.
Ubuntuディストリビューション, インストールしたい.NETのバージョンを選択する.
公式ページをもとに, 今回はUbuntu22.04, .NET9をインストールしていきます.

# .NETバックポートパッケージリポジトリを追加
sudo add-apt-repository ppa:dotnet/backports
# SDKインストール
sudo apt-get update sudo apt-get install -y dotnet-sdk-9.0
# ランタイムインストール(ASP.NET込み)
sudo apt-get update sudo apt-get install -y aspnetcore-runtime-9.0
# ASP.NETが不要なら以下でもOK
sudo apt-get install -y dotnet-runtime-9.0

F#ソリューション作成

今回は"fs-sandbox"という名前のディレクトリでソリューションを作成していきます.
dotnetというコマンドに関しては, 参考記事をご覧ください.

# fs-sandboxというディレクトリを作成, ディレクトリ移動
mkdir fs-sandbox
cd fs-sandbox

# ソリューションファイル作成
dotnet new sln

# F#で"Core"という名前でプロジェクト作成
# ※ C#で作りたい場合は以下のコマンドを"C#"に書き換えればOK
dotnet new console -lang "F#" -o Core
# ソリューションにプロジェクト追加
# ※ C#で作った場合は.fsproj->.csprojに変更すればOK
dotnet sln add Core/Core.fsproj
# ソリューションにプロジェクトが追加されたかチェック
dotnet sln fs-sandbox list

# ソリューションビルド
dotnet build fs-sandbox.sln
# プロジェクトを走らせる
dotnet run --project Core/Core.fsproj

ついでに個人的好みのコード

大体の場合は, コンソールプロジェクト生成時点で以下のようなコードが書いてある

// Program.fs
printfn "Hello from F#"

名前空間, モジュール名がない... ちょっと怖いので少しだけ追加

// Program.fs
namespace Core
    module Program = 
        [<EntryPoint>]
        let Main args =
            printfn "Hello from F#"
            0
  • 名前空間はプロジェクト名と合わせる
  • モジュール名はソースコードファイル名と合わせる
  • メイン関数として, エントリポイントを付けておく

以上. 良き.NETライフを.

参考記事

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?