This repo contains the source code for the cross-platform .NET SDK. It aggregates the .NET toolchain, the .NET runtime, the templates, and the .NET Windows Desktop runtime. It produces zip, tarballs, and native packages for various supported platforms.
The links below are for preview versions of .NET tooling. Prefer to use released versions of the .NET tools? Go to https://dot.net/download.
.NET Framework is the product from which the .NET Core project originated. .NET Core (mostly just called ".NET" here) adds many features and improvements and supports many more platforms than .NET Framework. .NET Framework remains fully supported and you can find the downloads on the .NET website. For new projects, we recommend you use .NET Core.
This repo is for the installers. Most of the implementation is in other repos, such as the dotnet/runtime repo or the dotnet/aspnetcore repo and many others. We welcome you to join us there!
You can consult the Documents Index for the SDK repo to find out current issues, see workarounds, and to see how to file new issues.
This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.
The repository contains native code project required for the Windows installer. If you intend to build it locally on Windows, you will need to ensure that you have the following items installed.
-
Install CMAKE 3.21.0 is required if you're building VS 17.0. Make sure to add CMAKE to your PATH (the installer will prompt you).
-
Install MSVC Build tools for x86/x64/arm64, v14.28-16.9
-
build
for basic build -
build -pack
to build the installer -
To build in VS, run a command line build first, then run
artifacts\core-sdk-build-env.bat
from a VS command prompt and thendevenv Microsoft.DotNet.Cli.sln
-
To test different languages of the installer, run
artifacts\packages\Debug\Shipping>dotnet-sdk-3.1.412-win-x64.exe /lang 1046
using the LCID of the language you want to test
This repo also contains code to help you build the entire .NET product end-to-end from source (often referred to as source-build), even in disconnected/offline mode. Please see the dotnet/source-build repo for more information.