Udostępnij za pośrednictwem


Eksportowanie programu vcpkg

Streszczenie

vcpkg export [options] {<package>... | --x-all-installed}

opis

Eksportuje wbudowane pakiety z zainstalowanego katalogu do autonomicznego zestawu SDK dla deweloperów.

export Tworzy autonomiczny, dystrybucyjny zestaw SDK (Software Development Kit), który może być używany na innym komputerze bez oddzielnego uzyskiwania vcpkg. Zawiera:

  1. Wstępnie utworzone pliki binarne dla wybranych pakietów
  2. Ich przejściowe zależności
  3. Pliki integracji, takie jak łańcuch narzędzi narzędzia CMake lub rekwizyty/obiekty docelowe MSBuild

Uwaga

Zachowanie tego polecenia różni się w trybie klasycznym i w trybie manifestu

Polecenie export nie instaluje żadnych pakietów ani zależności przechodnich. Eksportuje tylko pakiety, które są już zainstalowane.

Aby uzyskać więcej informacji, zobacz Tryb manifestu lub Tryb klasyczny.

Tryb klasyczny

W trybie klasycznym akceptuje argumenty specyfikacji pakietów kwalifikowanych trzykrotnie (na przykład: zlib:x64-windows) vcpkg export

Pakiety do wyeksportowania można określić, dodając <port name>:<triplet> argumenty do wiersza polecenia.

Aby na przykład wyeksportować sqlite pakiet dla x64-windows elementu i x64-linux, użyj polecenia :

vcpkg export sqlite:x64-windows sqlite:x64-linux --zip

To polecenie eksportuje określone pakiety w formacie zip. Zarówno sqlite:x64-windows , jak i sqlite:x64-linux należy zainstalować przed uruchomieniem polecenia vcpkg export.

Tryb manifestu

W trybie manifestu polecenie eksportuje wszystkie aktualnie zainstalowane pakiety. Katalog instalacyjny zawiera wszystkie pakiety zadeklarowane w manifeście (vcpkg.json), a także ich przejściowe zależności. Uruchom polecenie vcpkg install przed użyciem tego polecenia, aby upewnić się, że wszystkie wymagane pakiety są zainstalowane.

W tym trybie nie można określić poszczególnych pakietów do wyeksportowania. Polecenie działa w całym stanie zainstalowanym jako jedna jednostka, szanując zależności i wersje określone w pliku manifestu.

Inną różnicą jest wymaganie --output-dir opcji. Ta opcja określa katalog, w którym będą przechowywane wyeksportowane pakiety.

Na przykład z katalogu manifestu

vcpkg export --zip --output-dir=.\exports

Eksportuje wszystkie aktualnie zainstalowane pakiety do .\exports katalogu w pliku zip. Opcja --zip określa, że wyeksportowane pakiety powinny być skompresowane do pliku zip.

Standardowa integracja

Większość formatów eksportu zawiera standardowy zestaw plików integracji:

  • Łańcuch narzędzi CMake pod adresem /scripts/buildsystems/vcpkg.cmake
  • Rekwizyty/obiekty docelowe programu MSBuild w i /scripts/buildsystems/msbuild/vcpkg.props/scripts/buildsystems/msbuild/vcpkg.targets
  • Drzewo instalacji w lokalizacji/

Niektóre formaty eksportu różnią się od tego zestawu standardowego; Aby uzyskać więcej informacji, zobacz pomoc dotyczącą indywidualnego formatu poniżej.

Formaty

Oficjalnie obsługiwane formaty zestawu SDK:

Eksperymentalne formaty zestawu SDK (mogą zostać w dowolnym momencie zmienione lub usunięte):

Nieprzetworzona katalog

vcpkg export --raw [options] <package>...

Utwórz nieskompresowany układ katalogu pod adresem <output-dir>/<output>/.

Zawiera standardowe pliki integracji.

Zip

vcpkg export --zip [options] <package>...

Utwórz skompresowany układ katalogu zip pod adresem <output-dir>/<output>.zip.

Zawiera standardowe pliki integracji.

7Zip

vcpkg export --7zip [options] <package>...

Utwórz układ katalogu 7zip pod adresem <output-dir>/<output>.7z.

Zawiera standardowe pliki integracji.

NuGet

vcpkg export --nuget [options] <package>...

Utwórz pakiet NuGet pod adresem <output-dir>/<nuget-id>.<nuget-version>.nupkg.

Zawiera standardowe pliki integracji, a także dodatkową integrację msBuild w celu obsługi dołączania do projektu MSBuild C++ (.vcxproj) za pośrednictwem Menedżer pakietów NuGet. Należy pamiętać, że nie można mieszać wielu pakietów NuGet utworzonych razem export — będzie używany tylko jeden z pakietów. Aby dodać dodatkowe biblioteki, należy utworzyć nowy eksport z pełnym zestawem zależności.

Opcje specyficzne dla formatu:

IFW

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

vcpkg export --ifw [options] <package>...

Wyeksportuj do instalatora opartego na ifw.

Opcje specyficzne dla formatu:

Czekoladka

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

vcpkg export --x-chocolatey [options] <package>...

Eksportowanie pakietu Chocolatey.

Opcje specyficzne dla formatu:

Prefab

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

vcpkg export --prefab [options] <package>...

Eksportuj do formatu prefab.

Opcje specyficzne dla formatu:

Opcje

Wszystkie polecenia vcpkg obsługują zestaw typowych opcji.

<package>

Jest to lista pakietów skompilowanych najwyższego poziomu, które zostaną uwzględnione w zestawie SDK. Wszystkie zależności tych pakietów zostaną również uwzględnione, aby upewnić się, że wynikowy zestaw SDK jest samodzielny.

Składnia pakietu

<port name>:<triplet>

Odwołania do pakietów bez trojaków są automatycznie kwalifikowane do domyślnej trójki docelowej. Uwaga: <port name>:<triplet> argumenty nie są dozwolone w przypadku używania vcpkg export w trybie manifestu.

--x-all-installed

Uwaga

W tej sekcji opisano eksperymentalną funkcję vcpkg, która może ulec zmianie lub zostać usunięta w dowolnym momencie.

Eksportuj wszystkie zainstalowane pakiety. Ta opcja jest dorozumiana w przypadku używania vcpkg export w trybie manifestu.

--dry-run

Nie wykonuj eksportu, drukuj tylko plan eksportu.

--ifw-configuration-file-path=

Określ tymczasową ścieżkę pliku dla konfiguracji instalatora.

--ifw-installer-file-path=

Określ ścieżkę pliku dla wyeksportowanego instalatora.

--ifw-packages-directory-path=

Określ ścieżkę katalogu tymczasowego dla pakietów ponownie spakowanych.

--ifw-repository-directory-path=

Określ ścieżkę katalogu dla wyeksportowanego repozytorium.

--ifw-repository-url=

Określ adres URL repozytorium zdalnego dla instalatora online.

--x-maintainer=

Określ osoby odpowiedzialne za wyeksportowany pakiet Chocolatey.

--nuget-description=

Określa opis danych wyjściowych dla plików NuGet .nupkg.

Wartość domyślna to "Eksport NuGet Vcpkg".

--nuget-id=

Określa identyfikator danych wyjściowych dla plików NuGet .nupkg.

Ta opcja zastępuje opcję specjalnie --output dla eksportera NuGet. Zobacz --output , aby uzyskać wartości domyślne.

--nuget-version=

Określa wersję wyjściową dla plików NuGet nupkg.

Wartość domyślna to 1.0.0.

--output=

Określa nazwę bazową danych wyjściowych.

Każdy typ zestawu SDK używa tej nazwy podstawowej do określenia określonych plików wyjściowych. Szczegółowe informacje można znaleźć w powyższej dokumentacji dotyczącej zestawu SDK.

Wartość domyślna to vcpkg-export-<date>-<time>. Użycie skryptu elementu export powinno zawsze przekazywać tę flagę w celu zapewnienia deterministycznych danych wyjściowych.

--output-dir=

Określa katalog wyjściowy.

Wszystkie pliki zestawu SDK najwyższego poziomu zostaną utworzone w tym katalogu. Ta opcja jest wymagana w trybie manifestu. W trybie klasycznym jest to opcjonalne i domyślne katalog główny programu vcpkg.

--prefab-artifact-id=

Identyfikator artefaktu to nazwa projektu zgodnie ze specyfikacjami maven.

--prefab-group-id=

GroupId jednoznacznie identyfikuje projekt zgodnie ze specyfikacjami maven.

--prefab-maven

Włącz narzędzie Maven.

--prefab-min-sdk=

Minimalna obsługiwana wersja zestawu SDK dla systemu Android.

--prefab-target-sdk=

Docelowa wersja zestawu SDK obsługiwana przez system Android.

--prefab-version=

Wersja jest wersją projektu zgodnie ze specyfikacjami maven.

--x-version-suffix=

Określ sufiks wersji do dodania dla wyeksportowanego pakietu Chocolatey.