Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Synopsis
vcpkg export [options] {<package>... | --x-all-installed}
Description
Экспортирует встроенные пакеты из установленного каталога в автономный пакет SDK для разработчиков.
export создает автономный распространяемый пакет SDK (пакет средств разработки программного обеспечения), который можно использовать на другом компьютере без отдельной приобретения vcpkg. Она содержит:
- Предварительно созданные двоичные файлы для выбранных пакетов
- Их транзитивные зависимости
- Файлы интеграции, такие как цепочка инструментов CMake или props/targets MSBuild
Замечание
Поведение этой команды отличается в классическом режиме и режиме манифеста
Команда export не устанавливает пакеты или транзитивные зависимости. Он экспортирует только установленные пакеты.
Дополнительные сведения см. в режиме манифеста или классическом режиме .
Классический режим
В классическом режиме принимает аргументы спецификации пакета с тройным значением (например: zlib:x64-windowsvcpkg export )
Вы указываете пакеты для экспорта путем добавления <port name>:<triplet> аргументов в командную строку.
Например, для экспорта sqlite пакета x64-windows и x64-linuxиспользования:
vcpkg export sqlite:x64-windows sqlite:x64-linux --zip
Эта команда экспортирует указанные пакеты в zip-формате. И sqlite:x64-windows то, и sqlite:x64-linux другое необходимо установить перед запуском vcpkg export.
Режим манифеста
В режиме манифеста команда экспортирует все установленные пакеты. Каталог установки включает все пакеты, объявленные в манифесте (vcpkg.json), а также их транзитивные зависимости. Запустите vcpkg install перед использованием этой команды, чтобы убедиться, что установлены все необходимые пакеты.
В этом режиме нельзя указать отдельные пакеты для экспорта. Команда работает со всем установленным состоянием в виде одной сущности, учитывая зависимости и версии, указанные в файле манифеста.
Другое отличие заключается в требовании --output-dir параметра. Этот параметр указывает каталог, в котором будут храниться экспортированные пакеты.
Например, из каталога манифеста
vcpkg export --zip --output-dir=.\exports
Экспортирует все установленные пакеты .\exports в каталог в ZIP-файле. Параметр --zip указывает, что экспортированные пакеты должны быть сжаты в ZIP-файл.
Стандартная интеграция
Большинство форматов экспорта содержат стандартный набор файлов интеграции:
- Цепочка инструментов CMake в
/scripts/buildsystems/vcpkg.cmake -
Реквизиты и целевые объекты
/scripts/buildsystems/msbuild/vcpkg.propsMSBuild/scripts/buildsystems/msbuild/vcpkg.targets -
Дерево установки в
/
Некоторые форматы экспорта отличаются от этого стандартного набора; Дополнительные сведения см. в справке по отдельному формату ниже.
Список типов
Официально поддерживаемые форматы пакета SDK:
Необработанный каталог
vcpkg export --raw [options] <package>...
Создайте макет несжатого каталога по адресу <output-dir>/<output>/.
Содержит стандартные файлы интеграции.
Zip-архив
vcpkg export --zip [options] <package>...
Создайте сжатый макет каталога ZIP по адресу <output-dir>/<output>.zip.
Содержит стандартные файлы интеграции.
7Zip
vcpkg export --7zip [options] <package>...
Создайте макет каталога 7zip по адресу <output-dir>/<output>.7z.
Содержит стандартные файлы интеграции.
NuGet
vcpkg export --nuget [options] <package>...
Создайте пакет NuGet по адресу <output-dir>/<nuget-id>.<nuget-version>.nupkg.
Содержит файлы интеграции уровня "Стандартный" , а также дополнительную интеграцию MSBuild для поддержки включения в проект MSBuild C++ (.vcxproj) через диспетчер пакетов NuGet. Обратите внимание, что вы не можете смешивать несколько пакетов NuGet, созданных вместе export , — будет использоваться только один из пакетов. Чтобы добавить дополнительные библиотеки, необходимо создать новый экспорт с полным набором зависимостей.
Форматирование определенных параметров:
IFW
Экспорт IFW удален.
Chocolatey
Экспорт шоколада был удален.
Разборный дом
Экспорт предварительной проверки удален.
Options
Все команды vcpkg поддерживают набор общих параметров.
<package>
Это список встроенных пакетов верхнего уровня, которые будут включены в пакет SDK. Все зависимости этих пакетов также будут включены, чтобы обеспечить автономность результирующего пакета SDK.
Синтаксис пакета
<port name>:<triplet>
Ссылки на пакеты без триплета автоматически определяются целевым триплетом по умолчанию.
Примечание. <port name>:<triplet> Аргументы не допускаются при использовании vcpkg export в режиме манифеста.
--x-all-installed
Замечание
В этом разделе рассматривается экспериментальная функция vcpkg, которая может изменяться или удаляться в любое время.
Экспортируйте все установленные пакеты. Этот параметр подразумевается при использовании vcpkg export в режиме манифеста.
--dereference-symlinks
Копирует символы в виде обычных файлов и каталогов в экспортированных результатах.
--dry-run
Не выполняйте экспорт, печатайте только план экспорта.
--nuget-description=
Указывает выходное описание для файлов NuGet .nupkg.
По умолчанию используется параметр "Экспорт NuGet Vcpkg".
--nuget-id=
Указывает идентификатор вывода для файлов NuGet .nupkg.
Этот параметр переопределяет --output параметр специально для экспортера NuGet. См --output . сведения о значениях по умолчанию.
--nuget-version=
Указывает выходную версию для файлов NuGet .nupkg.
По умолчанию — 1.0.0.
--output=
Указывает выходное базовое имя.
Каждый тип пакета SDK использует это базовое имя для определения конкретных выходных файлов. Дополнительные сведения см. в документации по пакету SDK, приведенной выше.
По умолчанию — vcpkg-export-<date>-<time>. Использование скрипта export всегда должно передавать этот флаг, чтобы обеспечить детерминированные выходные данные.
--output-dir=
Указывает выходной каталог.
Все файлы пакета SDK верхнего уровня будут созданы в этом каталоге. Этот параметр необходим в режиме манифеста. В классическом режиме это необязательно и по умолчанию используется корневой каталог vcpkg.