Installieren von .NET unter macOS

In diesem Artikel wird erläutert, wie Sie .NET unter macOS installieren. .NET besteht aus der Runtime und dem SDK. Die Runtime wird zum Ausführen von .NET-Apps verwendet und ist möglicherweise bereits in der App enthalten. Das SDK wird zum Erstellen von .NET-Apps und -Bibliotheken verwendet. Die .NET-Runtime wird immer mit dem SDK installiert.

Version 6.0 ist die aktuelle Version von .NET.

Unterstützte Versionen

Die folgende Tabelle enthält die derzeit unterstützten .NET-Releases und die macOS-Versionen, die diese unterstützen. Diese Versionen werden so lange unterstützt, bis die Version von .NET das Ende des Supports erreicht.

  • ✔️ gibt an, dass die Version von .NET weiterhin unterstützt wird.
  • ❌ gibt an, dass die Version von .NET nicht unterstützt wird.
Betriebssystem .NET Core 3.1 .NET 5 .NET 6
macOS 12.0 „Monterey“ ✔️ 3.1 ✔️ 5.0 ✔️ 6.0
macOS 11.0 „Big Sur“ ✔️ 3.1 ✔️ 5.0 ✔️ 6.0
macOS 10.15 Catalina ✔️ 3.1 ✔️ 5.0 ✔️ 6.0

Weitere Informationen zum Lebenszyklus von .NET-Versionen finden Sie in der Richtlinie zur Unterstützung von .NET und .NET Core.

Nicht unterstützte Versionen

Die folgenden Versionen von .NET werden nicht mehr unterstützt (❌). Die Downloads dafür bleiben weiterhin veröffentlicht:

  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

Informationen zur Runtime

Die Runtime wird zur Ausführung der mit .NET erstellten Apps verwendet. Wenn ein App-Autor eine App veröffentlicht, kann er die Runtime zusammen mit seiner App bereitstellen. Wenn er die Runtime nicht hinzufügt, ist es dem Benutzer überlassen, die Runtime zu installieren.

Unter macOS können Sie zwei verschiedene Runtimes installieren:

  • ASP.NET Core-Runtime
    Diese führt ASP.NET Core-Apps aus. Diese Runtime schließt die .NET-Runtime ein.

  • .NET-Runtime
    Hierbei handelt es sich um die einfachste Runtime, die keine weiteren Runtimes beinhaltet. Es wird dringend empfohlen, dass Sie die ASP.NET Core-Runtime installieren, um die bestmögliche Kompatibilität mit .NET-Apps zu erzielen.

Informationen zum SDK

Das SDK wird zum Erstellen und Veröffentlichen von .NET-Apps und -Bibliotheken verwendet. Die Installation des SDK umfasst beide Runtimes: ASP.NET Core und .NET

Notarielle Beglaubigung

Ab macOS Catalina (Version 10.15) muss jegliche Software notarisiert werden, die nach dem 1. Juni 2019 erstellt wurde und mit einer Entwickler-ID verteilt wird. Diese Voraussetzung gilt für die .NET-Runtime, das .NET SDK und jegliche Software, die mit .NET erstellt wird.

Die Runtime und die SDK-Installationsprogramme für .NET wurden seit dem 18. Februar 2020 notariell beglaubigt. Vorherige Versionen wurden nicht notarisiert. Wenn Sie eine nicht notarisierte App ausführen, wird eine Fehlermeldung ähnlich der folgenden Abbildung angezeigt:

macOS Catalina-Notarisierungswarnung

Weitere Informationen dazu, wie sich die erzwungene Notarisierung auf .NET (und Ihre .NET-Apps) auswirkt, finden Sie unter macOS Catalina-Notarisierung und die Auswirkungen auf .NET Core-Downloads und -Projekte.

libgdiplus

Für .NET-Anwendungen, die die Assembly System.Drawing.Common verwenden, muss libgdiplus installiert sein.

Eine einfache Möglichkeit zum Abrufen von libgdiplus bietet der Homebrew-Paket-Manager („brew“) für macOS. Installieren Sie nach der Installation von brew libgdiplus durch Ausführen der folgenden Befehle in einem Terminal (Befehl):

brew update
brew install mono-libgdiplus

Installieren mit einem Installer

macOS verfügt über eigenständige Installationsprogramme, die zur Installation des .NET 6 SDK verwendet werden können:

Herunterladen und manuelles Installieren

Alternativ zu den macOS-Installationsprogrammen für .NET können Sie das SDK und die Runtime herunterladen und manuell installieren. Die manuelle Installation wird normalerweise im Rahmen von CI-Tests (Continuous Integration) durchgeführt. Für Entwickler oder Benutzer eignet sich in der Regel die Verwendung eines Installationsprogramms besser.

Laden Sie zunächst entweder für das SDK oder die Runtime eine binäre Version von einer der folgenden Websites herunter. Wenn Sie das .NET SDK installieren, müssen Sie die entsprechende Runtime nicht installieren:

Extrahieren Sie als Nächstes die heruntergeladene Datei, und führen Sie den Befehl export aus, um DOTNET_ROOT auf den Speicherort des extrahierten Ordners festzulegen. Stellen Sie anschließend sicher, dass sich .NET in PATH befindet. Dadurch sollten die .NET CLI-Befehle im Terminal verfügbar sein.

Alternativ können nach dem Herunterladen der .NET-Binärdatei die folgenden Befehle aus dem Verzeichnis ausgeführt werden, in dem die Datei gespeichert wird, um die Runtime zu extrahieren. Dadurch werden auch die .NET CLI-Befehle im Terminal verfügbar und die erforderlichen Umgebungsvariablen festgelegt. Denken Sie daran, den DOTNET_FILE-Wert in den Namen der heruntergeladenen Binärdatei zu ändern:

DOTNET_FILE=dotnet-sdk-6.0.100-osx-x64.tar.gz
export DOTNET_ROOT=$(pwd)/dotnet

mkdir -p "$DOTNET_ROOT" && tar zxf "$DOTNET_FILE" -C "$DOTNET_ROOT"

export PATH=$PATH:$DOTNET_ROOT

Tipp

Mit den oben aufgeführten export-Befehlen werden nur die .NET-CLI-Befehle für die Terminalsitzung bereitgestellt, in der sie ausgeführt wurden.

Sie können Ihr Shell-Profil bearbeiten, um diese Befehle dauerhaft hinzuzufügen. Für Linux sind verschiedene Shells verfügbar, die jeweils über ein anderes Profil verfügen. Zum Beispiel:

  • Bash-Shell: ~/.bash_profile, ~/.bashrc
  • Korn-Shell: ~/.kshrc oder .profile
  • Z-Shell: ~/.kshrc oder .profile

Bearbeiten Sie die geeignete Quelldatei für die Shell, und fügen Sie :$HOME/dotnet am Ende der vorhandenen PATH-Anweisung hinzu. Wenn keine PATH-Anweisung enthalten ist, fügen Sie eine neue Zeile mit export PATH=$PATH:$HOME/dotnet hinzu.

Fügen Sie außerdem export DOTNET_ROOT=$HOME/dotnet am Ende der Datei hinzu.

Bei diesem Ansatz können Sie unterschiedliche Versionen an separaten Speicherorten installieren und explizit auswählen, welche Version von welcher Anwendung verwendet werden soll.

Arm-basierte Mac-Computer

In den folgenden Abschnitten werden die Punkte beschrieben, die Sie bei der Installation von .NET auf einem Arm-basierten Mac-Computern berücksichtigen sollten.

Unterstützte Funktionen

In der folgenden Tabelle wird beschrieben, welche Versionen von .NET auf einem Arm-basierten Mac-Computer unterstützt werden:

.NET-Version Architektur SDK Typ Pfadkonflikt
6.0 ARM64 Ja Ja Nein
6.0 x64 Ja Ja Nein
5.0 ARM64 Nein Nein
5.0 x64 Nein Ja Ja
3.1 ARM64 Nein Nein
3.1 x64 Nein Ja Ja

Die x64- und Arm64-Versionen des .NET 6 SDK sind unabhängig voneinander. Wenn eine neue Version veröffentlicht wird, muss jede Installation aktualisiert werden.

Pfadunterschiede

Auf einem Arm-basierten Mac-Computer werden alle Arm64-Versionen von .NET im normalen Ordner /usr/local/share/dotnet/ installiert. Wenn Sie jedoch die x64-Version des .NET 6 SDK installieren, wird sie im Ordner /usr/local/share/dotnet/x64/dotnet/ installiert.

Pfadkonflikte

Das x64 .NET 6 SDK wird in seinem eigenen Verzeichnis installiert, wie im vorherigen Abschnitt beschrieben. Dadurch können die Arm64- und x64-Versionen des .NET 6 SDK auf demselben Computer vorhanden sein. Allerdings werden x64-SDKs vor Version 6.0 nicht unterstützt und am gleichen Speicherort wie die Arm64-Version im Ordner /usr/local/share/dotnet/ installiert. Wenn Sie ein nicht unterstütztes x64-SDK installieren möchten, müssen Sie zuerst die Arm64-Version deinstallieren. Das Gegenteil ist ebenfalls zutreffend: Sie müssen das nicht unterstützte x64-SDK deinstallieren, um die Arm64-Version zu installieren.

Pfadvariablen

Umgebungsvariablen, die .NET dem Systempfad hinzufügen (z. B. die PATH-Variable), müssen möglicherweise geändert werden, wenn Sie sowohl die x64- als auch die Arm64-Version des .NET 6 SDK installiert haben. Außerdem sind einige Tools auf die DOTNET_ROOT-Umgebungsvariable angewiesen, die ebenfalls aktualisiert werden müsste, um auf den entsprechenden Installationsordner des .NET 6 SDK zu verweisen.

Installieren mit Visual Studio für Mac

Visual Studio für Mac installiert das .NET SDK, wenn die .NET-Workload ausgewählt wird. Informationen zu den ersten Schritten mit der .NET-Entwicklung unter macOS finden Sie unter Installieren von Visual Studio 2019 für Mac.

.NET SDK-Version Visual Studio-Version
6.0 Visual Studio 2022 für Mac Vorschau 3 17.0 oder höher.
5.0 Visual Studio 2019 für Mac, Version 8.8 oder höher
3.1 Visual Studio 2019 für Mac, Version 8.4 oder höher

macOS Visual Studio 2019 für Mac mit ausgewählter .NET-Workload.

Installieren zusammen mit Visual Studio Code

Visual Studio Code ist ein leistungsstarker und einfacher Quellcode-Editor, der auf Ihrem Desktop ausgeführt wird. Visual Studio Code ist für Windows, macOS und Linux verfügbar.

Zwar verfügt Visual Studio Code im Gegensatz zu Visual Studio über keine automatisierten .NET-Installationsprogramme, allerdings ist das Hinzufügen der Unterstützung für .NET einfach.

  1. Laden Sie Visual Studio Code herunter, und installieren Sie das Tool.
  2. Laden Sie das .NET SDK herunter, und installieren Sie es.
  3. Installieren Sie die C#-Erweiterung aus dem Visual Studio Code Marketplace.

Installieren mit Bash-Automatisierung

Die dotnet-Installationsskripts werden für die Automatisierung und Installationen der Runtime von nicht-Administratoren verwendet. Sie können das Skript über die Seite dotnet-install-Skriptverweis herunterladen.

Das Skript installiert standardmäßig die aktuelle Version von LTS (Long-Term Support), die derzeit .NET 6.0 entspricht. Sie können eine bestimmte Version durch Angeben der current-Option auswählen. Schließen Sie die runtime-Option mit ein, um eine Runtime zu installieren. Andernfalls installiert das Skript das SDK nicht.

./dotnet-install.sh --channel 6.0 --runtime aspnetcore

Hinweis

Durch den obigen Befehl wird die ASP.NET Core-Runtime für maximale Kompatibilität installiert. Die ASP.NET Core-Runtime enthält auch die .NET-Standardruntime.

Docker

Container bieten eine einfache Möglichkeit, Ihre Anwendung vom Rest des Hostsystems zu isolieren. Container auf demselben Computer teilen nur den Kernel und verwenden die Ihrer Anwendung zur Verfügung gestellten Ressourcen.

.NET kann in einem Docker-Container ausgeführt werden. Offizielle Docker-Images für .NET werden in Microsoft Container Registry (MCR) veröffentlicht und sind im Microsoft.NET Docker-Hub-Repository verfügbar. Jedes Repository enthält Images für verschiedene Kombinationen von .NET (SDK oder Runtime) und dem Betriebssystem, die Sie verwenden können.

Microsoft stellt Images bereit, die auf bestimmte Szenarien zugeschnitten sind. So stellt beispielsweise das ASP.NET Core-Repository Images bereit, die für die Ausführung von ASP.NET Core-Apps in der Produktion erstellt wurden.

Weitere Informationen zur Verwendung von .NET in einem Docker-Container finden Sie unter Einführung zu .NET und Docker und Docker-Beispiele für .NET.

Nächste Schritte