The user of your app is required to install the. The following command produces a cross-platform binary: TypeĪpps published as framework-dependent are cross-platform and don't include the. For more information, see framework-dependent apps roll forward.
NET runtime isn't installed, the app may run using a newer runtime if the app is configured to roll-forward. Apps published in this way are run with the dotnet command and can be run on any platform.Ĭross-platform binaries can be run on any operating system as long as the targeted. For example, if you have an app named word_reader, a file named word_reader.dll is created. The dll file is named after your project. The following commands produce an executable: TypeĬross-platform binaries are created when you publish your app as framework-dependent, in the form of a dll file. NET runtime and libraries only the app and 3rd-party dependencies are included. Apps published as framework-dependent don't include the. NET runtime with the app, and users of the app don't have to worry about installing. Publishing an app as self-contained includes the. When publishing your app and creating an executable, you can publish the app as self-contained or framework-dependent. They're specific to an operating system and CPU architecture. Produce an executableĮxecutables aren't cross-platform. The following table outlines the commands used to publish an app as framework-dependent or self-contained, per SDK version: Typeįramework-dependent executable for the current platform.įramework-dependent executable for a specific platform.ĭotnet publish -r -self-contained falseįramework-dependent cross-platform binary.įor more information, see. When an executable is produced, you can specify the target platform with a runtime identifier (RID). Framework-dependent applications can be created without an executable, and these applications are cross-platform. NET runtime.īoth publishing modes produce a platform-specific executable by default. Users of the application have to separately install the. Publishing your app as framework-dependent produces an application that includes only your application itself and its dependencies. Users of the application can run it on a machine that doesn't have the. NET runtime and libraries, and your application and its dependencies. Publishing your app as self-contained produces an application that includes the. NET can be published in two different modes, and the mode affects how a user runs your app.