vcpkg install
Zusammenfassung
- klassischen Modus
vcpkg install [options] <package>...
- Manifestmodus
vcpkg install [options]
Beschreibung
Erstellen und Installieren von Portpaketen.
Klassischer Modus
In klassischen Modusfügt dieses Verb Portpakete zum vorhandenen Satz im installierten Verzeichnis hinzu (Standardeinstellung: installed/
unter dem vcpkg-Stamm). Dies kann erfordern, dass vorhandene Pakete entfernt und neu erstellt werden, was fehlschlagen kann.
Paketsyntax
portname[feature1,feature2]:triplet
Paketverweise ohne Triplet werden automatisch vom Standardziel-Tripletqualifiziert. Paketverweise, die nicht explizit core
auflisten, werden als implizieren alle Standardfeatures betrachtet.
Manifestmodus
In Manifestmoduslegt dieser Befehl das installierte Verzeichnis auf den Zustand fest, der durch die vcpkg.json
Manifestdatei angegeben wird, um Pakete nach Bedarf hinzuzufügen, zu entfernen oder neu zu erstellen.
Optionen
Alle vcpkg-Befehle unterstützen eine Reihe von allgemeinen Optionen.
--allow-unsupported
Anstatt auf einem nicht unterstützten Port zu beenden, fahren Sie mit einer Warnung fort.
Standardmäßig lehnt vcpkg die Ausführung eines Installationsplans ab, der eine Portinstallation für ein Triplet außerhalb seiner "supports"
-Klausel enthält. Die "supports"
-Klausel eines Pakets beschreibt den vollständigen Satz von Plattformen, auf denen ein Paket erstellt werden kann. Dieses Flag weist vcpkg an, zu warnen, dass der Build fehlschlägt, anstatt zu stoppen.
--clean-after-build
Bereinigen Sie Buildstrukturen, Pakete und Downloads nach dem Erstellen jedes Pakets.
Diese Option hat die gleiche Auswirkung wie das Übergeben von --clean-buildtrees-after-build
, --clean-downloads-after-build
und --clean-packages-after-build
.
--clean-buildtrees-after-build
Bereinigen Sie alle Unterverzeichnisse aus den temporären Unterordnern der Buildstrukturen, nachdem Sie jedes Paket erstellt haben.
Alle Dateien auf oberster Ebene im Unterordner "Buildtrees" (z. B. buildtrees/zlib/config-x64-windows-out.log
) werden beibehalten. Alle Unterverzeichnisse werden gelöscht.
--clean-downloads-after-build
Bereinigen Sie alle nicht abgerufenen Ressourcen aus dem Ordner downloads/
nach dem Erstellen jedes Pakets.
Alle Dateien der obersten Ebene im ordner downloads/
werden gelöscht. Extrahierte Tools werden beibehalten.
--clean-packages-after-build
Bereinigen Sie den temporären Unterordner der Pakete, nachdem Sie jedes Paket erstellt haben.
Der Unterordner "Pakete" für das integrierte Paket (z. B. packages/zlib_x64-windows
) wird nach der Installation gelöscht.
--dry-run
Drucken Sie den Installationsplan, entfernen Oder installieren Sie keine Pakete.
Der Installationsplan listet alle Pakete und Features auf, die installiert werden sollen, sowie alle anderen Pakete, die entfernt und neu erstellt werden müssen.
--editable
- klassischen Modus nur
Führen Sie bearbeitbare Builds für alle direkt referenzierten Pakete in der Befehlszeile aus.
Wenn vcpkg Ports erstellt, wird der Quellcode jedes Mal gelöscht und erneut extrahiert, um sicherzustellen, dass Eingaben korrekt sind. Dies ist erforderlich, damit der Manifestmodus genau aktualisiert, was installiert ist, und für die binäre Zwischenspeicherung, um sicherzustellen, dass zwischengespeicherte Inhalte korrekt sind.
Durch das Übergeben des --editable
-Flags wird dieses Verhalten deaktiviert, wobei Bearbeitungen an den extrahierten Quellen im ordner buildtrees/
beibehalten werden. Auf diese Weise können Patches schnell entwickelt werden, indem sie die Notwendigkeit vermeiden, eine Datei für jede Änderung zu schreiben.
Während eines bearbeitbaren Builds extrahierte Quellen verfügen nicht über ein .clean/
Suffix für den Verzeichnisnamen und werden von nachfolgenden nicht bearbeitbaren Builds nicht gelöscht.
--enforce-port-checks
Fehler bei der Installation, wenn ein Port Probleme erkannt hat oder versucht, ein veraltetes Feature zu verwenden.
Standardmäßig führt vcpkg mehrere Überprüfungen für integrierte Pakete aus und gibt Warnungen aus, wenn Probleme erkannt werden. Mit diesem Flag werden diese Warnungen auf einen Fehler aktualisiert.
--x-feature=<feature>
Anmerkung
In diesem Abschnitt wird ein experimentelles Feature von vcpkg behandelt, das jederzeit geändert oder entfernt werden kann.
- Manifestmodus nur
Geben Sie ein zusätzliches Feature aus dem vcpkg.json
an, für das Abhängigkeiten installiert werden sollen.
Standardmäßig werden nur "dependencies"
und die Abhängigkeiten von "default-features"
installiert.
--head
- klassischen Modus nur
Fordern Sie alle Pakete an, auf die in der Befehlszeile explizit verwiesen wird, um die neuesten Quellen abzurufen, die beim Erstellen verfügbar sind.
Dieses Kennzeichen ist nur für temporäre Tests vorgesehen und nicht für die Produktion oder langfristige Verwendung vorgesehen. Dadurch wird binäre Zwischenspeicherung für alle explizit referenzierten Pakete und deren Nachfolger deaktiviert, da vcpkg nicht alle Eingaben genau nachverfolgen kann.
--keep-going
Setzen Sie den Installationsplan nach dem ersten Fehler fort.
Standardmäßig wird vcpkg beim ersten Paketbuildfehler beendet. Dieses Flag weist vcpkg an, das Erstellen und Installieren anderer Teile des Installationsplans fortzusetzen, die nicht vom fehlgeschlagenen Paket abhängen.
--x-no-default-features
Anmerkung
In diesem Abschnitt wird ein experimentelles Feature von vcpkg behandelt, das jederzeit geändert oder entfernt werden kann.
- Manifestmodus nur
Installieren Sie die Standardfeatures nicht aus dem Manifest der obersten Ebene.
Wenn Sie install
im Manifestmodus verwenden, werden standardmäßig alle Abhängigkeiten der in "default-features"
aufgeführten Features installiert. Dieses Flag deaktiviert dieses Verhalten, sodass nur features, die von --x-feature
explizit aktiviert werden, installiert werden.
--no-downloads
Beim Erstellen eines Pakets verhindern Sie, dass Ports während des Builds neue Ressourcen herunterladen.
Standardmäßig erwerben Ports Quellcode und Tools bei Bedarf aus dem Internet (vorbehaltlich Zwischenspeicherung von Ressourcen). Dieser Parameter blockiert Downloads und schränkt Ports nur auf die Objekte ein, die zuvor auf dem Computer heruntergeladen und zwischengespeichert wurden.
--only-downloads
Versuchen Sie, alle Ressourcen herunterzuladen, die für einen Installationsplan erforderlich sind, ohne Builds auszuführen.
Wenn diese Option übergeben wird, führt vcpkg jeden Build im Plan aus, bis er den ersten aufruft, der nicht heruntergeladene externe Prozess aufruft. Die meisten Ports führen alle Downloads vor dem ersten externen Prozessaufruf (in der Regel an ihr Buildsystem) durch, sodass dieses Verfahren alle erforderlichen Ressourcen herunterlädt. Ports, die diesem Verfahren nicht folgen, verfügen nicht über bereits heruntergeladene Ressourcen.
--only-binarycaching
Verweigerung der Ausführung von Builds. Nur Pakete aus binärcacheswiederherstellen.
Dieses Flag blockiert die Ausführung von vcpkg-Builds bei Bedarf und schlägt fehl, wenn ein Paket nicht in binären Caches gefunden werden kann.
--recurse
- klassischen Modus nur
Genehmigen eines Installationsplans, für den ein Neuerstellen von Paketen erforderlich ist.
Um den Satz von Features eines installierten Pakets zu ändern, muss vcpkg dieses Paket entfernen und neu erstellen. Da dies möglicherweise fehlschlägt und die Installationsstruktur mit weniger Paketen als der Benutzer gestartet hat, muss der Benutzer Pläne genehmigen, mit denen Pakete neu erstellt werden, indem diese Kennzeichnung übergeben wird.
--x-write-nuget-packages-config
Anmerkung
In diesem Abschnitt wird ein experimentelles Feature von vcpkg behandelt, das jederzeit geändert oder entfernt werden kann.
Schreibt eine nuGet-packages.config
-formatierte Datei für die Verwendung mit binären Zwischenspeicherung.
Diese Option kann in Verbindung mit --dry-run
verwendet werden, um die Liste der NuGet-Pakete abzurufen, die aus der binären Zwischenspeicherung erforderlich sind, ohne Pakete zu erstellen oder zu installieren. Auf diese Weise kann die NuGet-Befehlszeile separat für erweiterte Szenarien aufgerufen werden, z. B. die Verwendung alternativer Protokolle zum Abrufen der .nupkg
Dateien.
--no-print-usage
Unterdrücken Der Erzeugung von Verwendungstext, der am Ende der Installation gedruckt wird.