macOS development manual


In order to build multi-platform applications using .NET Core on macOS, the first steps are for installing in our MAC machine the required tools. We need to install .NET Core SDK from Microsoft and to allow us to develop easier, we will install an advance editor with a lot of features, Visual Studio Code from Microsoft.

Both installations are very easy and the detailed description can be found by these two links:

Once installed VS Code, you need to install a C# extension to facilitate us to code and debugging:
Install C# extension.

Important:

At the time of this writing, .NET Core has a problem with supporting the GdiPlus library on macOS. There is a solution that will help you to run any .Net libraries using GdiPlus.

«System.Drawing .NET Core on macOS, GDIPlus Exception»

Problem:

You got the whole thing up and running in debug. But when you went for your dotnet run, you got the following crash:

Solution:

First of all, you need to install «Homebrew» - The missing package manager for macOS(or Linux).
Paste that in a macOSTerminal prompt:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

The script explains what it will do and then pauses before it does it.

Homebrew installs the stuff you need that Apple (or your Linux system) didn't.
Paste that in a macOSTerminal prompt:
$ brew install wget
Homebrew installs packages to their own directory and then symlinks their files into /usr/local

Homebrew won't install files outside its prefix and you can place a Homebrew installation wherever you like.

Homebrew complements macOS(or your Linux system). Install your RubyGems with gem and their dependencies with brew.

Now, we need to install mono-libgdiplus. GdiPlus -compatible API on non-Windows operating systems.
Paste that in a macOSTerminal prompt:
$ brew install mono-libgdiplus

Congratulations, you have installed all the dependencies needed to run .Net components.

In next paragraphs we will explain in detail how to create simple console application. All of them are based on this VS Code guide:
Get Started with C# and Visual Studio Code
Not only is possible to create .NET Core applications that will run on macOSusing Mac as a developing platform. It is also possible to create it using a Windows machine and any modern Visual Studio version, as Microsoft Visual Studio Community 2017.