Skip to content

How to run Gtk platform on Windows, Linux, and Mac.

Curtis Wensley edited this page Mar 31, 2022 · 3 revisions

Most platforms can only run on a single Operating System. For example, WinForms and Wpf only run on Windows and Mac/XamMac only run on macOS. However, Gtk+ applications can run on many operating systems.

Eto does not package Gtk+, as this is a huge dependency and is not necessary because of Eto's mission (run using the native toolkit on each platform). For development purposes however, you may wish to run your Gtk port on either Mac or Windows for easier testing and debugging. This document outlines what you need to install to get that running.

Note that Eto.Gtk2 and Eto.Gtk3 platforms are considered obsolete, and you should use Eto.Gtk instead. If you've used Eto's project templates to create your project, then you're good to go! In some circumstances the old versions may still be desired. If you can't use Eto.Gtk for any reason, please file an issue to help us understand why to help migrate everyone to the newer platform.

Eto.Gtk is built upon this excellent GtkSharp package, which supports Gtk+ 3.x.

Windows

On Windows, you can run either Eto.Gtk or Eto.Gtk2.

For Eto.Gtk, you must install Gtk+ 3.

For Eto.Gtk2, you must install gtk# for .NET, then restart your computer.

Mac

On macOS, you can run either Eto.Gtk or Eto.Gtk2.

For Eto.Gtk, you can install Gtk+3 via homebrew with brew install gtk+3

For Eto.Gtk2, you must install and run using mono.

Linux

On Linux, you can run either Eto.Gtk, Eto.Gtk2, or Eto.Gtk3.

For Eto.Gtk, you only need Gtk+ 3.x installed which is usually already installed with the system. You can run your application using .NET Core or mono.

For Eto.Gtk2, you must install the gtk-sharp2 package and run via mono.

For Eto.Gtk3, you must install the gtk-sharp3 package and run via mono.