esportazione vcpkg
vcpkg export [options] {<package>... | --x-all-installed}
Esporta i pacchetti compilati dalla directory installata in un SDK per sviluppatori autonomo.
export
produce un SDK autonomo e distribuibile (Software Development Kit) che può essere usato in un altro computer senza acquisire separatamente vcpkg. Contiene:
- File binari predefiniti per i pacchetti selezionati
- Dipendenze transitive
- File di integrazione, ad esempio una toolchain CMake o msBuild props/targets
Nota
Il comportamento di questo comando è diverso in modalità classica e in modalità manifesto
Il export
comando non installa pacchetti o dipendenze transitive. Esporta solo i pacchetti già installati.
Per altri dettagli, vedere Modalità manifesto o modalità classica.
In modalità classica accetta vcpkg export
argomenti di specifica del pacchetto qualificato triplet (ad esempio: zlib:x64-windows
)
Specificare i pacchetti da esportare aggiungendo <port name>:<triplet>
argomenti alla riga di comando.
Ad esempio, per esportare il sqlite
pacchetto per x64-windows
e x64-linux
, usare:
vcpkg export sqlite:x64-windows sqlite:x64-linux --zip
Questo comando esporta i pacchetti specificati in formato ZIP. Sia sqlite:x64-windows
che sqlite:x64-linux
devono essere installati prima di eseguire vcpkg export
.
In modalità manifesto, il comando esporta tutti i pacchetti attualmente installati. La directory di installazione include tutti i pacchetti dichiarati nel manifesto (vcpkg.json
) e le relative dipendenze transitive. Eseguire vcpkg install
prima di usare questo comando per assicurarsi che tutti i pacchetti necessari siano installati.
In questa modalità non è possibile specificare singoli pacchetti da esportare. Il comando opera sull'intero stato installato come singola entità, rispettando le dipendenze e le versioni specificate nel file manifesto.
Un'altra differenza è il requisito dell'opzione --output-dir
. Questa opzione specifica la directory in cui verranno archiviati i pacchetti esportati.
Ad esempio, dalla directory del manifesto
vcpkg export --zip --output-dir=.\exports
Esporta tutti i pacchetti attualmente installati nella .\exports
directory in un file ZIP. L'opzione --zip
specifica che i pacchetti esportati devono essere compressi in un file ZIP.
La maggior parte dei formati di esportazione contiene un set standard di file di integrazione:
- Toolchain CMake all'indirizzo
/scripts/buildsystems/vcpkg.cmake
- Proprietà/destinazioni MSBuild in e
/scripts/buildsystems/msbuild/vcpkg.props
/scripts/buildsystems/msbuild/vcpkg.targets
- Albero di installazione in
/
Alcuni formati di esportazione differiscono da questo set standard; per altri dettagli, vedere la Guida relativa al singolo formato di seguito.
Formati SDK ufficialmente supportati:
Formati dell'SDK sperimentale (possono cambiare o essere rimossi in qualsiasi momento):
vcpkg export --raw [options] <package>...
Creare un layout di directory non compresso in <output-dir>/<output>/
.
Contiene i file di integrazione standard.
vcpkg export --zip [options] <package>...
Creare un layout di directory compresso zip in <output-dir>/<output>.zip
.
Contiene i file di integrazione standard.
vcpkg export --7zip [options] <package>...
Creare un layout di directory 7zip in <output-dir>/<output>.7z
.
Contiene i file di integrazione standard.
vcpkg export --nuget [options] <package>...
Creare un pacchetto NuGet in <output-dir>/<nuget-id>.<nuget-version>.nupkg
.
Contiene i file di integrazione standard e l'integrazione aggiuntiva di MSBuild per supportare l'inclusione in un progetto C++ di MSBuild (.vcxproj
) tramite il Gestione pacchetti NuGet. Si noti che non è possibile combinare più pacchetti NuGet prodotti insieme export
. Verrà usato solo uno dei pacchetti. Per aggiungere altre librerie, è necessario creare una nuova esportazione con il set completo di dipendenze.
Opzioni specifiche del formato:
Nota
Questa sezione illustra una funzionalità sperimentale di vcpkg che può cambiare o essere rimossa in qualsiasi momento.
vcpkg export --ifw [options] <package>...
Esporta in un programma di installazione basato su IFW.
Opzioni specifiche del formato:
--ifw-configuration-file-path
--ifw-installer-file-path
--ifw-packages-directory-path
--ifw-repository-directory-path
--ifw-repository-url
Nota
Questa sezione illustra una funzionalità sperimentale di vcpkg che può cambiare o essere rimossa in qualsiasi momento.
vcpkg export --x-chocolatey [options] <package>...
Esportare un pacchetto Chocolatey.
Opzioni specifiche del formato:
Nota
Questa sezione illustra una funzionalità sperimentale di vcpkg che può cambiare o essere rimossa in qualsiasi momento.
vcpkg export --prefab [options] <package>...
Esporta in formato Prefab.
Opzioni specifiche del formato:
--prefab-artifact-id
--prefab-group-id
--prefab-maven
--prefab-min-sdk
--prefab-target-sdk
--prefab-version
Tutti i comandi vcpkg supportano un set di opzioni comuni.
Questo è l'elenco dei pacchetti compilati di primo livello che verranno inclusi nell'SDK. Tutte le dipendenze di questi pacchetti verranno incluse anche per garantire che l'SDK risultante sia indipendente.
Sintassi del pacchetto
<port name>:<triplet>
I riferimenti ai pacchetti senza tripletta vengono qualificati automaticamente dal triplo di destinazione predefinito.
Nota: <port name>:<triplet>
gli argomenti non sono consentiti quando si usa vcpkg export
in modalità manifesto.
Nota
Questa sezione illustra una funzionalità sperimentale di vcpkg che può cambiare o essere rimossa in qualsiasi momento.
Esportare tutti i pacchetti installati. Questa opzione è implicita quando si usa vcpkg export
in modalità manifesto.
Non eseguire l'esportazione, stampare solo il piano di esportazione.
Specificare il percorso del file temporaneo per la configurazione del programma di installazione.
Specificare il percorso del file per il programma di installazione esportato.
Specificare il percorso della directory temporanea per i pacchetti ricompressi.
Specificare il percorso della directory per il repository esportato.
Specificare l'URL del repository remoto per il programma di installazione online.
Specificare il manutenitore per il pacchetto Chocolatey esportato.
Specifica la descrizione dell'output per i file NuGet con estensione nupkg.
L'impostazione predefinita è "Esportazione NuGet Vcpkg".
Specifica l'ID di output per i file nuGet con estensione nupkg.
Questa opzione sostituisce l'opzione --output
specifica per l'utilità di esportazione NuGet. Vedere --output
per i valori predefiniti.
Specifica la versione di output per i file nuGet con estensione nupkg.
Il valore predefinito è 1.0.0
.
Specifica il nome della base di output.
Ogni tipo di SDK usa questo nome di base per determinare i relativi file di output specifici. Per informazioni dettagliate, vedere la documentazione specifica dell'SDK precedente.
Il valore predefinito è vcpkg-export-<date>-<time>
. L'uso con script di export
deve sempre passare questo flag per garantire l'output deterministico.
Specifica la directory di output.
Tutti i file SDK di primo livello verranno prodotti in questa directory. Questa opzione è obbligatoria in modalità manifesto. In modalità classica, questa opzione è facoltativa e per impostazione predefinita viene predefinito la directory radice vcpkg.
Artifact Id è il nome del progetto in base alle specifiche maven.
GroupId identifica in modo univoco il progetto in base alle specifiche maven.
Abilitare Maven.
Versione minima dell'SDK supportata da Android.
Versione dell'SDK supportata per Android.
La versione è la versione del progetto in base alle specifiche di Maven.
Specificare il suffisso della versione da aggiungere per il pacchetto Chocolatey esportato.
Feedback su vcpkg
vcpkg è un progetto di open source. Selezionare un collegamento per fornire feedback: