Verwenden des Microsoft C++-Toolsets über die Befehlszeile

Sie können mithilfe von Tools, die in Visual Studio enthalten sind, C- und C++-Anwendungen auf der Befehlszeile erstellen. Das Microsoft-C++-Compilertoolset (MSVC) kann auch als eigenständiges Paket heruntergeladen werden. Sie müssen die Visual Studio IDE nicht installieren, wenn Sie nicht vorhaben, diese zu verwenden.

Hinweis

In diesem Artikel wird beschrieben, wie Sie eine Umgebung einrichten, in der Sie die einzelnen Compiler, Linker, Bibliotheksprogramme und andere grundlegende Tools verwenden. Das native Projektbuildsystem MSBuild verwendet die Umgebung nicht wie im Artikel beschrieben. Weitere Informationen zum Verwenden von MSBuild an der Befehlszeile finden Sie unter C++: MSBuild in der Befehlszeile.

Herunterladen und Installieren der Tools

Wenn Sie Visual Studio und einen C++-Workload installiert haben, verfügen Sie über alle Befehlszeilentools. Informationen zum Installieren von C++ und Visual Studio finden Sie unter Installieren der C++-Unterstützung in Visual Studio. Wenn Sie nur die Befehlszeilentools wünschen, laden Sie die Visual Studio Build Tools herunter. Wenn Sie die heruntergeladene ausführbare Datei ausführen, wird der Visual Studio-Installer aktualisiert und ausgeführt. Um nur die Tools zu installieren, die Sie für die C++-Entwicklung benötigen, wählen Sie die Workload Desktopentwicklung mit C++ aus. Sie können optionale Bibliotheken und Toolsets auswählen, die unter Installationsdetails enthalten sein sollen. Wählen Sie zum Erstellen von Code mithilfe der Visual Studio 2015- oder 2017-Toolsets die optionalen Buildtools von MSVC v140 oder v141 aus. Wenn Sie die gewünschten Einstellungen vorgenommen haben, wählen Sie Installieren aus.

Wenn Sie Visual Studio und einen C++-Workload installiert haben, verfügen Sie über alle Befehlszeilentools. Informationen zum Installieren von C++ und Visual Studio finden Sie unter Installieren der C++-Unterstützung in Visual Studio. Wenn Sie nur die Befehlszeilentools wünschen, laden Sie die Visual Studio Build Tools 2017 herunter. Wenn Sie die heruntergeladene ausführbare Datei ausführen, wird der Visual Studio-Installer aktualisiert und ausgeführt. Um nur die Tools zu installieren, die Sie für die C++-Entwicklung benötigen, wählen Sie die Workload Visual C++ Build Tools aus. Sie können optionale Bibliotheken und Toolsets auswählen, die unter Installationsdetails enthalten sein sollen. Wählen Sie zum Erstellen von Code mithilfe des Visual Studio 2015-Toolsets die optionalen Buildtools von MSVC v140 aus. Wenn Sie die gewünschten Einstellungen vorgenommen haben, wählen Sie Installieren aus.

Verwenden der Befehlszeilentools

Wenn Sie eine der C++-Workloads im Visual Studio-Installer auswählen, installiert sie das Visual Studio-Plattformtoolset. Ein Plattformtoolset enthält alle C- und C++-Tools für eine bestimmte Visual Studio-Version. Zu den Tools gehören die C/C++-Compiler, Linker, Assembler und andere Buildtools sowie die entsprechenden Bibliotheken. Sie können all diese Tools über die Befehlszeile verwenden. Sie werden auch intern von der Visual Studio-IDE verwendet. Es gibt separate Compiler und Tools für das Hosten auf x86- und x64-Architekturen, um Code für x86-, x64-, ARM- und ARM64-Zielumgebungen zu erstellen. Jeder Satz Tools für eine bestimmte Host- und Zielbuildarchitektur ist in einem eigenen Verzeichnis gespeichert.

Um ordnungsgemäß zu funktionieren, müssen für die Tools verschiedene spezifische Umgebungsvariablen festgelegt werden. Diese Variablen werden verwendet, um die Tools dem Pfad hinzuzufügen und die Speicherorte von Includedateien, Bibliotheksdateien und SDKs festzulegen. Um das Festlegen dieser Umgebungsvariablen zu vereinfachen, erstellt der Installer während der Installation angepasste Befehlsdateien oder Batchdateien. Sie können eine dieser Befehlsdateien ausführen, um eine bestimmte Host- und Zielbuildarchitektur, eine Windows SDK-Version oder ein Plattformtoolset festzulegen. Aus praktischer Gründen erstellt das Installationsprogramm auch Verknüpfungen im Startmenü. Die Verknüpfungen starten Developer-Eingabeaufforderungen, indem sie diese Befehlsdateien für bestimmte Kombinationen von Host und Ziel verwenden. Diese Verknüpfungen stellen sicher, dass alle erforderlichen Umgebungsvariablen festgelegt und einsatzbereit sind.

Die erforderlichen Umgebungsvariablen sind für Ihre Installation und für die von Ihnen gewählte Buildarchitektur spezifisch. Sie können sich bei Updates oder Upgrades des Produkts ändern. Daher wird empfohlen, dass Sie eine installierte Verknüpfung oder Befehlsdatei zu einer Eingabeaufforderung verwenden, anstatt die Umgebungsvariablen selbst festzulegen.

Welche Toolsets, Befehlsdateien und Verknüpfungen installiert werden, hängt vom Prozessor Ihres Computers und den während der Installation aktivierten Optionen ab. Die in x86-Systemen gehosteten Tools und Cross Tools, die x86-und x64-Code erstellen, sind immer installiert. Wenn Sie über ein Windows-System mit 64 Bit verfügen, werden die im x64-System gehosteten Tools und Cross Tools, die x86-und x64-Code erstellen, ebenfalls installiert. Wenn Sie die optionalen C++-Tools für Universelle Windows-Plattform auswählen, werden die x86-und x64-Tools, die ARM- und ARM64-Code erstellen, ebenfalls installiert. Andere Workloads können diese und andere Tools installieren.

Pfad- und Umgebungsvariablen für Befehlszeilenbuilds

Die MSVC-Befehlszeilentools verwenden die Umgebungsvariablen PATH, TMP, INCLUDE, LIB und LIBPATH sowie andere für Ihre installierten Tools, Plattformen und SDKs spezifische Umgebungsvariablen. Selbst bei einer einfachen Visual Studio-Installation werden möglicherweise 20 oder mehr Umgebungsvariablen festgelegt. Die Werte dieser Umgebungsvariablen sind für die jeweilige Installation und Buildkonfiguration spezifisch und können durch Produktaktualisierungen oder -upgrades geändert werden. Aus diesem Grund wird dringend empfohlen, eine Developer-Eingabeaufforderungsverknüpfung oder eine angepasste Befehlsdatei zu verwenden, um diese festzulegen. Es wird nicht empfohlen, diese selbst in der Windows-Umgebung festzulegen.

Sie können den SET-Befehl verwenden, um anzuzeigen, welche Umgebungsvariablen von einer Verknüpfung der Developer-Eingabeaufforderung festgelegt werden. Öffnen Sie ein einfaches Eingabeaufforderungsfenster, und erfassen Sie die Ausgabe des SET-Befehls für eine Baseline. Öffnen Sie ein Developer-Eingabeaufforderungsfenster, und erfassen Sie für den Vergleich die Ausgabe des SET-Befehls. Ein Diff-Tool wie das in der Visual Studio-IDE integrierte Tool kann beim Vergleich der Umgebungsvariablen und beim Anzeigen der von der Developer-Eingabeaufforderung festgelegten Werte hilfreich sein. Informationen zu den spezifischen vom Compiler und Linker verwendeten Umgebungsvariablen finden Sie unter CL-Umgebungsvariablen.

Developer-Eingabeaufforderungsverknüpfungen

Die Eingabeaufforderungsverknüpfungen werden in einem versionsspezifischen Visual Studio-Ordner im Windows-Startmenü gespeichert. Das Folgende ist eine Liste der grundlegenden Eingabeaufforderungsverknüpfungen und der von ihnen unterstützten Buildarchitekturen:

  • Developer-Eingabeaufforderung: Legt die Umgebung für die Verwendung von x86-nativen 32-Bit-Tools zum Erstellen von x86-nativem 32-Bit-Code fest.
  • x86 Native Tools-Eingabeaufforderung: Legt die Umgebung für die Verwendung von x86-nativen 32-Bit-Tools zum Erstellen von x86-nativem 32-Bit-Code fest.
  • x64 Native Tools-Eingabeaufforderung: Legt die Umgebung für die Verwendung von x64-nativen 64-Bit-Tools zum Erstellen von x64-nativem 64-Bit-Code fest.
  • x86_x64 Cross Tools-Eingabeaufforderung: Legt die Umgebung für die Verwendung von x86-nativen 32-Bit-Tools zum Erstellen von x64-nativem 64-Bit-Code fest.
  • x64_x86 Cross Tools-Eingabeaufforderung: Legt die Umgebung für die Verwendung von x64-nativen 64-Bit-Tools zum Erstellen von x86-nativem 32-Bit-Code fest.

Die Namen des Startmenü-Ordners und der Verknüpfungen hängen von der installierten Visual Studio-Version ab. Wenn Sie einen festlegen, hängt dieser auch vom Spitznamen der Installation ab. Angenommen, Sie haben Visual Studio 2019 installiert und der Installation den Spitznamen Aktuell gegeben. Die Verknüpfung der Developer-Eingabeaufforderung heißt Developer-Eingabeaufforderung für VS 2019 (Aktuell) , in einem Ordner mit dem Namen Visual Studio 2019.

Die Namen des Startmenü-Ordners und der Verknüpfungen hängen von der installierten Visual Studio-Version ab. Wenn Sie einen festlegen, hängt dieser auch vom Spitznamen der Installation ab. Angenommen, Sie haben Visual Studio 2017 installiert und der Installation den Spitznamen Aktuell gegeben. Die Verknüpfung der Developer-Eingabeaufforderung heißt Developer-Eingabeaufforderung für VS 2017 (Aktuell) , in einem Ordner mit dem Namen Visual Studio 2017.

Die Namen des Startmenü-Ordners und der Verknüpfungen hängen von der installierten Visual Studio-Version ab. Angenommen, Sie haben Visual Studio 2015 installiert. Die Verknüpfung der Developer-Eingabeaufforderung heißt Developer-Eingabeaufforderung für VS 2015.

Hinweis

Für mehrere Befehlszeilentools oder Tooloptionen sind möglicherweise Administratorberechtigungen erforderlich. Wenn bei der Verwendung dieser Tools solche Berechtigungsprobleme auftreten, empfiehlt es sich, das Developer-Eingabeaufforderungsfenster unter Verwendung der Option Als Administrator ausführen zu öffnen. Klicken Sie mit der rechten Maustaste, um das Kontextmenü für das Eingabeaufforderungsfenster zu öffnen, und klicken Sie dann auf Mehr und Als Administrator ausführen.

So öffnen Sie ein Developer-Eingabeaufforderungsfenster

  1. Öffnen Sie auf dem Desktop das Windows-Startmenü, und scrollen Sie dann nach unten, um den Ordner für Ihre Visual Studio-Version zu finden und zu öffnen, beispielsweise Visual Studio 2019.

  2. Wählen Sie im Ordner die Developer-Eingabeaufforderung für Ihre Version von Visual Studio aus. Diese Verknüpfung startet ein Developer-Eingabeaufforderungsfenster, das die Standardbuildarchitektur mit x86-nativen 32-Bit-Tools zum Erstellen von x86-nativem 32-Bit-Code verwendet. Falls Sie eine andere als die Standardbuildarchitektur vorziehen, wählen Sie eine der Eingabeaufforderungen mit nativen oder kreuzkompatiblen Tools aus, um die Host- und die Zielarchitektur anzugeben.

Sogar noch schneller lässt sich eine Developer-Eingabeaufforderung öffnen, wenn Sie Developer-Eingabeaufforderung in das Suchfeld auf dem Desktop eingeben. Wählen Sie dann das gewünschte Ergebnis aus.

Speicherorte von Developer-Befehlsdateien

Wenn Sie es vorziehen, die Buildumgebung in einem vorhandenen Eingabeaufforderungsfenster festzulegen, können Sie eine der vom Installer erstellten Befehlsdateien verwenden. Es wird empfohlen, dass Sie die Umgebung in einem neuen Eingabeaufforderungsfenster festlegen. Wir raten davon ab, später im gleichen Befehlsfenster die Umgebung zu wechseln.

Der Speicherort der Befehlsdatei hängt von der installierten Version von Visual Studio und Ihren bei der Installation gewählten Optionen ab. Für Visual Studio 2019 befindet sich der typische Installationsspeicherort auf einem 64-Bit-System in \Programme (x86)\Microsoft Visual Studio\2019\Edition . Die Edition kann „Community“, „Professional“, „Enterprise“, „Buildtools“ oder ein anderer Spitzname sein.

Der Speicherort der Befehlsdatei hängt von der installierten Version von Visual Studio und Ihren bei der Installation gewählten Optionen ab. Für Visual Studio 2017 befindet sich der typische Installationsspeicherort auf einem 64-Bit-System in \Programme (x86)\Microsoft Visual Studio\2017\Edition . Die Edition kann „Community“, „Professional“, „Enterprise“, „Buildtools“ oder ein anderer Spitzname sein.

Der Speicherort der Befehlsdatei hängt von der Visual Studio-Version und dem Installationsverzeichnis ab. Für Visual Studio 2015 ist der typische Installationsspeicherort in „\Programme (x86)\Microsoft Visual Studio 14.0“.

Die primäre Developer-Eingabeaufforderungs-Eingabeaufforderungsdatei VsDevCmd.bat befindet sich im Unterverzeichnis Common7\Tools. Wenn keine Parameter angegeben werden, wird die Umgebung so festgelegt, dass die x86 Native Tools-Eingabeaufforderung zum Erstellen von 32-Bit-x86-Code verwendet wird.

Zum Einrichten spezifischer Buildarchitekturen gibt es weitere Befehlsdateien. Welche Befehlsdateien verfügbar sind, hängt von den Visual Studio-Workloads und den von Ihnen installierten Optionen ab. In Visual Studio 2017 und Visual Studio 2019 befinden sie sich im Unterverzeichnis VC\Auxiliary\Build.

Zum Einrichten spezifischer Buildarchitekturen gibt es weitere Befehlsdateien. Welche Befehlsdateien verfügbar sind, hängt von den Visual Studio-Workloads und den von Ihnen installierten Optionen ab. In Visual Studio 2015 befinden sie sich in den Architekturunterverzeichnissen VC, VC\bin oder VC\bin\, wobei architektur eine der nativen oder compilerübergreifenden Optionen ist.

Diese Befehlsdateien legen Standardparameter fest und rufen VsDevCmd.bat auf, um die angegebene Buildarchitekturumgebung einzurichten. Eine typische Installation kann etwa diese Befehlsdateien enthalten:

Befehlsdatei Host- und Zielarchitekturen
vcvars32.bat Die x86-nativen 32-Bit-Tools werden zum Erstellen von 32-Bit-x86-Code verwendet.
vcvars64.bat Die x64-nativen 64-Bit-Tools werden zum Erstellen von 64-Bit-x64-Code verwendet.
vcvarsx86_amd64.bat Die x86-nativen 32-Bit kreuzkompatiblen Tools werden zum Erstellen von 64-Bit-x64-Code verwendet.
vcvarsamd64_x86.bat Die x64-nativen 64-Bit kreuzkompatiblen Tools werden zum Erstellen von 32-Bit-x86-Code verwendet.
vcvarsx86_arm.bat Die x86-nativen 32-Bit kreuzkompatiblen Tools werden zum Erstellen ARM-Code verwendet.
vcvarsamd64_arm.bat Die x64-nativen 64-Bit kreuzkompatiblen Tools werden zum Erstellen ARM-Code verwendet.
vcvarsx86_arm64.bat Die x86-nativen 32-Bit kreuzkompatiblen Tools werden zum Erstellen von ARM64-Code verwendet.
vcvarsamd64_arm64.bat Die x64-nativen 64-Bit kreuzkompatiblen Tools werden zum Erstellen von ARM64-Code verwendet.
vcvarsall.bat Verwenden Sie Parameter zum Angeben der Host- und Zielarchitekturen, Windows SDK und Plattformoptionen. Um eine Liste der unterstützten Optionen anzuzeigen, rufen Sie diesen Befehl mit dem Parameter /help auf.

Achtung

Die vcvarsall.bat -Datei und andere Visual Studio-Befehlsdateien können sich von Computer zu Computer unterscheiden. Ersetzen Sie eine fehlende oder beschädigte vcvarsall.bat -Datei nicht durch eine Datei von einem anderen Computer. Führen Sie den Visual Studio-Installer erneut aus, um die fehlende Datei zu ersetzen.

Die vcvarsall.bat -Datei ist auch von Version zu Version unterschiedlich. Falls die aktuelle Version von Visual Studio auf einem Computer installiert ist, der außerdem über eine frühere Version von Visual Studio verfügt, sollten Sie nicht vcvarsall.bat oder eine andere Visual Studio-Befehlsdatei aus einer anderen Version im selben Eingabeaufforderungsfenster ausführen.

Verwenden der Entwicklertools in einem vorhandenen Befehlsfenster

Die einfachste Möglichkeit, eine bestimmte Buildarchitektur in einem vorhandenen Befehlsfenster anzugeben, ist die Verwendung der vcvarsall.bat -Datei. Legen Sie mit vcvarsall.bat die Umgebungsvariablen fest, um die Befehlszeile für die native 32-Bit- oder 64-Bit-Kompilierung zu konfigurieren. Mit Argumenten können Sie die Kreuzkompilierung für x86-, x64-, ARM- oder ARM64-Prozessoren angeben. Als Ziel können Sie Microsoft Store, Universelle Windows-Plattform oder Windows Desktop-Plattformen angeben. Sie können sogar festlegen, welche Windows SDK verwendet werden sollen, und die Toolsetversion der Plattform auswählen.

Wenn keine Argumente angegeben werden, werden die Umgebungsvariablen mit vcvarsall.bat so konfiguriert, dass der aktuelle native x86-Compiler für 32-Bit-Windows Desktop-Ziele verwendet wird. Sie können Argumente hinzufügen, um die Umgebung so zu konfigurieren, dass Sie eines der nativen oder kreuzkompatiblen Compilertools verwendet. Wenn Sie eine Konfiguration angeben, die auf Ihrem Computer nicht installiert oder verfügbar ist, zeigt vcvarsall.bat eine Fehlermeldung an.

vcvarsall-Syntax

vcvarsall.bat [architecture] [platform_type] [winsdk_version] [-vcvars_ver=vcversion] [spectre_mode]

architecture
Dieses optionale Argument gibt die zu verwendende Host- und Zielarchitektur an. Wenn architecture nicht angegeben wird, wird die Standardbuildumgebung verwendet. Diese Argumente werden unterstützt:

architecture Compiler Hostcomputerarchitektur Buildausgabearchitektur (Zielarchitektur)
x86 x86-32-Bit systemeigen x86, x64 x86
x86_amd64 oder x86_x64 x64 kreuzkompatibel auf x86 x86, x64 x64
x86_arm ARM auf x86-Cross x86, x64 ARM
x86_arm64 ARM64 kreuzkompatibel auf x86 x86, x64 ARM64
amd64 oder x64 x64 64-Bit nativ x64 x64
amd64_x86 oder x64_x86 x86 kreuzkompatibel auf x64 x64 x86
amd64_arm oder x64_arm ARM kreuzkompatibel auf x64 x64 ARM
amd64_arm64 oder x64_arm64 ARM64 kreuzkompatibel auf x64 x64 ARM64

platform_type
Dieses optionale Argument ermöglicht die Angabe von store oder uwp als Plattformtyp. Standardmäßig ist die Umgebung auf das Erstellen von Desktop- oder Konsolen-Apps festgelegt.

winsdk_version
Gibt optional die Version des zu verwendenden Windows SDK an. Standardmäßig wird das neueste installierte Windows SDK verwendet. Um die Windows SDK-Version anzugeben, können Sie eine vollständige Windows SDK-Nummer wie 10.0.10240.0 verwenden oder 8.1 angeben, wenn Sie das Windows 8.1 SDK verwenden möchten.

vcversion
Gibt optional das zu verwendende Visual Studio-Compilertoolset an. Standardmäßig ist die Umgebung auf die Verwendung des aktuellen Visual Studio-Compilertoolsets festgelegt.

Verwenden Sie -vcvars_ver=14.2x.yyyyy, um eine bestimmte Version des Compilertoolsets von Visual Studio 2019 anzugeben.

Verwenden Sie -vcvars_ver=14.29, um die neueste Version des Compilertoolsets von Visual Studio 2019 anzugeben.

Verwenden Sie -vcvars_ver=14.16, um die neueste Version des Compilertoolsets von Visual Studio 2017 anzugeben.

Verwenden Sie -vcvars_ver=14.1x.yyyyy, um eine bestimmte Version des Compilertoolsets von Visual Studio 2017 anzugeben.

Verwenden Sie -vcvars_ver=14.0, um das Compilertoolset von Visual Studio 2015 anzugeben.

spectre_mode
Lassen Sie diesen Parameter aus, um Bibliotheken ohne Spectre-Ausgleich zu verwenden. Verwenden Sie den Wert spectre , um Bibliotheken mit Spectre-Ausgleich zu verwenden.

Einrichten der Buildumgebung in einem vorhandenen Eingabeaufforderungsfenster

  1. Verwenden Sie an der Eingabeaufforderung den CD-Befehl, um in das Visual Studio-Installationsverzeichnis zu wechseln. Verwenden Sie dann erneut CD, um in das Unterverzeichnis zu wechseln, das die konfigurationsspezifischen Befehlsdateien enthält. Verwenden Sie für Visual Studio 2019 und Visual Studio 2017 das Unterverzeichnis VC\Auxiliary\Build. Verwenden Sie für Visual Studio 2015 das Unterverzeichnis VC.

  2. Geben Sie den Befehl für Ihre bevorzugte Entwicklerumgebung ein. Um beispielsweise ARM-Code für UWP auf einer 64-Bit-Plattform mithilfe des aktuellen Windows SDK und Visual Studio 2019-Compilertoolsets zu erstellen, verwenden Sie diese Befehlszeile:

    vcvarsall.bat amd64_arm uwp

Erstellen einer eigenen Eingabeaufforderungsverknüpfung

Öffnen Sie das Dialogfeld „Eigenschaften“ für eine Verknüpfung zur Developer-Eingabeaufforderung, um das verwendete Befehlsziel anzuzeigen. Beispielsweise ist das Ziel für die Verknüpfung x64 Native Tools-Eingabeaufforderung für VS 2019 ähnlich wie dies hier:

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"

Öffnen Sie das Dialogfeld „Eigenschaften“ für eine Verknüpfung zur Developer-Eingabeaufforderung, um das verwendete Befehlsziel anzuzeigen. Beispielsweise ist das Ziel für die Verknüpfung x64 Native Tools-Eingabeaufforderung für VS 2017 ähnlich wie dies hier:

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"

Öffnen Sie das Dialogfeld „Eigenschaften“ für eine Verknüpfung zur Developer-Eingabeaufforderung, um das verwendete Befehlsziel anzuzeigen. Beispielsweise ist das Ziel für die Verknüpfung VS2015 x64 Native Tools-Eingabeaufforderung ähnlich wie dies hier:

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64

Die architekturspezifischen Batchdateien legen den Parameter architecture fest und rufen vcvarsall.bat auf. Sie können an diese Batchdateien die gleichen Optionen übergeben, die Sie an vcvarsall.bat übergeben würden, oder vcvarsall.bat einfach direkt aufrufen. Um Parameter für Ihre eigene Befehlsverknüpfung anzugeben, fügen Sie sie am Ende des Befehls in doppelten Anführungszeichen hinzu. Hier sehen Sie beispielsweise eine Verknüpfung zum Erstellen von ARM-Code für die UWP auf einer 64-Bit-Plattform mit dem neuesten Windows SDK. Wenn Sie ein früheres Compilertoolset verwenden möchten, geben Sie die Versionsnummer an. Verwenden Sie in Ihrer Verknüpfung etwas in der Art dieses Befehlsziels:

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64_arm uwp -vcvars_ver=14.29

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64_arm uwp -vcvars_ver=14.19

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 -vcvars_ver=14.0

Passen Sie den Pfad an, damit er Ihr Visual Studio-Installationsverzeichnis angibt. Die vcvarsall.bat-Datei enthält zusätzliche Informationen über bestimmte Versionsnummern.

Befehlszeilentools

Zum Erstellen eines C-/C++-Projekts über eine Eingabeaufforderung bietet Visual Studio die folgenden Befehlszeilentools:

CL
Verwenden Sie den Compiler (cl.exe), um Quellcodedateien in Apps, Bibliotheken und DLLs zu kompilieren und zu verknüpfen.

Link
Verwenden Sie den Linker (link.exe), um kompilierte Objektdateien in Apps und DLLs zu verknüpfen.

Wenn Sie Builds über die Befehlszeile ausführen, ist der F1-Befehl für Soforthilfe nicht verfügbar. Stattdessen können Sie eine Suchmaschine verwenden, um Informationen zu Warnungen, Fehlern und Meldungen abzurufen. Sie können auch die Offlinehilfedateien herunterladen und verwenden. Um die Suche in docs.microsoft.com zu verwenden, geben Sie Ihre Abfrage in das Suchfeld oben in einem beliebigen Artikel ein.

Befehlszeilentools für die Projektverwaltung

Die Visual Studio-IDE verwendet standardmäßig native, auf MSBuild basierende Buildsysteme für Projekte. Sie können MSBuild direkt aufrufen, um Projekte ohne Verwendung der IDE zu erstellen. Sie können auch den Befehl devenv verwenden, um Visual Studio zum Erstellen von Projekten und Lösungen zu verwenden. Visual Studio unterstützt auch Buildsysteme, die auf CMake oder NMake basieren.

MSBuild
Verwenden Sie MSBuild (msbuild.exe) und eine Projektdatei (.vcxproj), um einen Build zu konfigurieren und das Toolset zu verwenden, ohne die Visual Studio-IDE zu laden. Dies entspricht dem Ausführen des Befehls Build für Projekte oder Projektmappe erstellen in der Visual Studio-IDE. MSBuild hat gegenüber der IDE Vorteile, wenn Sie an der Befehlszeile erstellen. Sie müssen nicht die vollständige IDE auf allen Ihren Buildservern und Buildpipelines installieren. Sie vermeiden den zusätzlichen Mehraufwand der IDE. MSBuild wird in containerisierten Buildumgebungen ausgeführt und unterstützt eine binäre Protokollierung.

DEVENV
Verwenden Sie DEVENV (devenv.exe) in Kombination mit einem Befehlszeilenschalter wie /Build oder /Clean , um bestimmte Buildbefehle auszuführen, ohne die Visual Studio-IDE anzuzeigen.

CMake
CMake (cmake.exe) ist ein plattformübergreifendes Open-Source-Tool, das zum Definieren von Buildprozessen verwendet wird, die auf mehreren Plattformen ausgeführt werden. CMake kann native Buildtools für die unterstützten Plattformen wie MsBuild oder NMake konfigurieren und steuern. Weitere Informationen zu CMake finden Sie in der CMake-Dokumentation.

NMAKE
Verwenden Sie NMAKE (nmake.exe), um C++-Projekte traditionell mithilfe eines Makefile zu erstellen.

Hinweis

Ab Visual Studio 2019, Version 16.5 verwenden MSBuild und Devenv nicht mehr die Befehlszeilenumgebung, um das verwendete Toolset und die verwendeten Bibliotheken zu steuern.

In diesem Abschnitt

In diesen Artikeln erfahren Sie, wie Sie Apps über die Befehlszeile erstellen und wie Sie die Buildumgebung der Befehlszeile anpassen. Einige zeigen, wie man 64-Bit-Toolsets verwendet und x86-, x64-, ARM- und ARM64-Plattformen als Ziel einsetzt. Außerdem wird die Verwendung der Befehlszeilen-Buildtools MSBuild und NMAKE beschrieben.

Walkthrough: Compiling a Native C++ Program on the Command Line (Exemplarische Vorgehensweise: Kompilieren eines nativen C++-Programms in der Befehlszeile).
Gibt ein Beispiel, das zeigt, wie Sie ein C++-Programm über die Befehlszeile erstellen und kompilieren.

Exemplarische Vorgehensweise: Kompilieren eines C-Programms in der Befehlszeile
Beschreibt, wie Sie ein in der Programmiersprache C geschriebenes Programm kompilieren.

Exemplarische Vorgehensweise: Kompilieren eines C++ / CLI-Programms in der Befehlszeile
Beschreibt, wie Sie ein C++-/CLI-Programm erstellen und kompilieren, das .NET Framework verwendet.

Walkthrough: Compiling a C++/CX program on the command line (Exemplarische Vorgehensweise: Kompilieren eines C++- / CX-Programms in der Befehlszeile)
Beschreibt, wie Sie ein C++-/CX-Programm erstellen und kompilieren, das die Windows Runtime verwendet.

NMAKE-Referenz
Enthält Links zu Artikeln, in denen das Microsoft Program Maintenance Utility (NMAKE.EXE) beschrieben wird.

MSBuild on the Command Line – C++ (C++: MSBuild in der Befehlszeile)
Enthält Links zu Artikeln, in denen die Verwendung von msbuild.exe auf der Befehlszeile dargestellt wird.

/MD, /MT, /LD (Use run-time library) (/MD, /MT, /LD (Runtimebibliothek verwenden))
Beschreibt die Verwendung dieser Compileroptionen für eine Debug- oder Releaselaufzeitbibliothek.

Compileroptionen
Enthält Links zu Artikeln, in denen die C- und C++-Compileroptionen sowie CL.exe erläutert werden.

Linkeroptionen
Enthält Links zu Artikeln, in denen die Linkeroptionen und LINK.EXE dargestellt werden.

Zusätzliche MSVC-Buildtools
Enthält Links zu den C-/C++-Buildtools, die in Visual Studio enthalten sind.

Siehe auch

Projekte und Buildsysteme