Linux(Ubuntu) に .NET をインストールして、C# と GTK# を使ってウィンドウを表示するには、以下の手順で進められます。
✅ ステップ 1: .NET SDK のインストール
Ubuntu に .NET をインストールするには、Microsoftの公式ドキュメントに従うのが一番安全です。以下は Ubuntu 22.04 以降を想定した例です:
# Microsoft パッケージのリポジトリを登録 wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb # 必要なパッケージのインストール sudo apt-get update sudo apt-get install -y dotnet-sdk-8.0
バージョンは 8.0
を例にしていますが、必要に応じて変更してください。
✅ ステップ 2: GTK# のインストール
GTK3 と GTK# を使う場合は以下のパッケージが必要です。
sudo apt install libgtk-3-dev sudo apt install mono-complete
mono-complete
に GTK#(GtkSharp)も含まれています。C# 用の GTK# バインディングです。
✅ ステップ 3: プロジェクトの作成
dotnet new console -n GtkApp cd GtkApp
✅ ステップ 4: GtkSharp の NuGet パッケージを追加
dotnet add package GtkSharp --version 3.22.25.176
💡 GTK# は GTK3 のバインディングを使っているので、GTK4 ではなく GTK3 に注意してください。
✅ ステップ 5: C# コードを書く
Program.cs
を次のように変更:
using System; using Gtk; class Program { static void Main(string[] args) { Application.Init(); Window window = new Window("GTK# Window"); window.SetDefaultSize(400, 300); window.DeleteEvent += (o, e) => Application.Quit(); window.ShowAll(); Application.Run(); } }
✅ ステップ 6: ビルドして実行
dotnet run
✅ ウィンドウが表示されない場合の対処法
GTK アプリを dotnet run
から直接起動してもうまく動作しないことがあります。その場合はビルドしてから mono
で実行する方法もあります:
dotnet build -c Release mono bin/Release/net8.0/GtkApp.dll
✅ まとめ
.NET
+GtkSharp
により、Linux 上でも C# で GUI アプリを作れます。- GTK# は GTK3 バインディングなので、GTK3 のライブラリが必要です。
mono-complete
により GTK# を含むすべての Mono 関連パッケージが一括インストールされます。
必要に応じて、日本語対応・フォント設定・テーマ適用なども対応できます!