The following instructions demonstrate installing .NET 8 on macOS. These instructions augment the more general .NET install instructions, including installing with .tar.gz
files, that work on multiple operating systems.
The following distributions are available for Linux:
We recommend you install the .NET SDK to develop and build applications, and to install one of the runtimes packages (like ASP.NET Core) to exclusively run applications.
Each of the distributions can be downloaded from:
Container images are provided for Linux (Alpine, Debian, and Ubuntu).
You can install any of the distributions with PKG. The following image demonstrates installing the .NET SDK. After launching the PKG, click “Continue” and you will be taken through the process of installing the SDK.
You can install .NET with a binary archive. This option is required if you want to install .NET for a single user. It is also recommended if you want to install .NET temporarily.
The following workflow demonstrates downloading, unpacking, configuring, and running the .NET SDK from the command line. You may choose to do some of these tasks via the browser and functionality provided by your operating system.
~# curl -Lo dotnet.tar.gz https://download.visualstudio.microsoft.com/download/pr/78706993-4be4-46e0-8b14-48f295884a1b/39c2db8388ac84cdfe7e909bdde39384/dotnet-sdk-8.0.100-preview.4.23260.5-osx-x64.tar.gz
~# mkdir dotnet
~# tar -C dotnet -xf dotnet.tar.gz
~# rm dotnet.tar.gz
~# export DOTNET_ROOT=~/dotnet
~# export PATH=$PATH:~/dotnet
~# dotnet --version
8.0.100-preview.4.23260.5
The DOTNET_ROOT
environment variable is required to launch an application with their executables (like myapp.exe
). The executables look for this environment variable to find the runtime if it isn’t installed in its regular location. The PATH
environment variable must be updated if you want to use dotnet
without absolute paths to its location. Setting both of these environment variables is optional.
You can add your .NET install location permanently to your path if you’d like.