vcpkg export
構文
vcpkg export [options] {<package>... | --x-all-installed}
説明
インストールされているディレクトリからスタンドアロンの開発者 SDK にビルドされたパッケージをエクスポートします。
export
は、vcpkg を個別に取得せずに別のマシンで使用できるスタンドアロンの再頒布可能な SDK (ソフトウェア開発キット) を生成します。 その構成要素を次に示します。
- 選択したパッケージの事前構築済みバイナリ
- 推移的な依存関係
- CMake ツールチェーンや MSBuild props/targets などの統合ファイル
Note
このコマンドの動作は、クラシック モードとマニフェスト モードでは異なります
この export
コマンドでは、パッケージや推移的な依存関係はインストールされません。 既にインストールされているパッケージのみがエクスポートされます。
詳細については、「 マニフェスト モード 」または 「クラシック モード 」を参照してください。
クラシック モード
クラシック モードでは、vcpkg export
トリプレット修飾パッケージの指定引数 (例: zlib:x64-windows
) を受け入れます。
エクスポートするパッケージを指定するには、コマンド ラインに引数を追加 <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
して、必要なすべてのパッケージがインストールされていることを確認します。
このモードでは、エクスポートする個々のパッケージを指定することはできません。 このコマンドは、インストールされている状態全体を 1 つのエンティティとして動作し、マニフェスト ファイルで指定された依存関係とバージョンを考慮します。
もう 1 つの違いは、オプションの --output-dir
要件です。 このオプションは、エクスポートされたパッケージを格納するディレクトリを指定します。
たとえば、マニフェスト ディレクトリから
vcpkg export --zip --output-dir=.\exports
現在インストールされているすべてのパッケージを zip ファイル内の .\exports
ディレクトリにエクスポートします。 このオプションは --zip
、エクスポートされたパッケージを zip ファイルに圧縮することを指定します。
標準統合
ほとんどのエクスポート形式には、標準の統合ファイルのセットが含まれています。
- CMake ツールチェーン
/scripts/buildsystems/vcpkg.cmake
- MSBuild の props/targets
/scripts/buildsystems/msbuild/vcpkg.props
/scripts/buildsystems/msbuild/vcpkg.targets
- のインストール ツリー
/
一部のエクスポート形式は、この標準セットとは異なります。詳細については、以下の個々の形式のヘルプを参照してください。
形式
公式にサポートされている SDK 形式:
試験的な SDK 形式 (いつでも変更または削除される場合があります):
Raw Directory
vcpkg export --raw [options] <package>...
で圧縮されていないディレクトリ レイアウトを <output-dir>/<output>/
作成します。
標準統合ファイルを 格納します。
郵便番号
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
を作成します。
NuGet パッケージ マネージャーを介した MSBuild C++ プロジェクト (.vcxproj
) へのインクルードをサポートするための、標準統合ファイルと追加の MSBuild 統合が含まれています。 生成された複数の NuGet パッケージを export
混在させることはできません。パッケージの 1 つだけが使用されます。 ライブラリを追加するには、依存関係の完全なセットを含む新しいエクスポートを作成する必要があります。
形式固有のオプション:
Ifw
Note
このセクションでは、いつでも変更または削除できる vcpkg の試験的な機能について説明します。
vcpkg export --ifw [options] <package>...
IFW ベースのインストーラーにエクスポートします。
形式固有のオプション:
--ifw-configuration-file-path
--ifw-installer-file-path
--ifw-packages-directory-path
--ifw-repository-directory-path
--ifw-repository-url
Chocolatey
Note
このセクションでは、いつでも変更または削除できる vcpkg の試験的な機能について説明します。
vcpkg export --x-chocolatey [options] <package>...
Chocolatey パッケージをエクスポートします。
形式固有のオプション:
プレハブ
Note
このセクションでは、いつでも変更または削除できる vcpkg の試験的な機能について説明します。
vcpkg export --prefab [options] <package>...
プレハブ形式にエクスポートします。
形式固有のオプション:
--prefab-artifact-id
--prefab-group-id
--prefab-maven
--prefab-min-sdk
--prefab-target-sdk
--prefab-version
[オプション]
すべての vcpkg コマンドでは、一連の 一般的なオプションがサポートされています。
<package>
これは、SDK に含まれる最上位のビルド パッケージの一覧です。 これらのパッケージの依存関係も含まれるため、結果として得られる SDK が自己完結型になります。
パッケージ構文
<port name>:<triplet>
トリプレットのないパッケージ参照は、既定のターゲット トリプレットによって自動的に修飾されます。
注: <port name>:<triplet>
マニフェスト モードで使用 vcpkg export
する場合、引数は使用できません。
--x-all-installed
Note
このセクションでは、いつでも変更または削除できる vcpkg の試験的な機能について説明します。
インストールされているすべてのパッケージをエクスポートします。 マニフェスト モードで使用する場合、このオプションは暗黙的に指定 vcpkg export
されます。
--dry-run
エクスポートを実行せず、エクスポート プランのみを印刷します。
--ifw-configuration-file-path=
インストーラー構成の一時ファイル パスを指定します。
--ifw-installer-file-path=
エクスポートしたインストーラーのファイル パスを指定します。
--ifw-packages-directory-path=
再パッケージ化されたパッケージの一時ディレクトリ パスを指定します。
--ifw-repository-directory-path=
エクスポートしたリポジトリのディレクトリ パスを指定します。
--ifw-repository-url=
オンライン インストーラーのリモート リポジトリ URL を指定します。
--x-maintainer=
エクスポートした Chocolatey パッケージのメインコンテナーを指定します。
--nuget-description=
NuGet .nupkg ファイルの出力の説明を指定します。
既定値は "Vcpkg NuGet エクスポート" です。
--nuget-id=
NuGet .nupkg ファイルの出力 ID を指定します。
このオプションは、 --output
NuGet エクスポーター専用のオプションをオーバーライドします。 既定値については、以下を参照してください --output
。
--nuget-version=
NuGet .nupkg ファイルの出力バージョンを指定します。
既定値は 1.0.0
です。
--output=
出力ベース名を指定します。
各 SDK の種類では、この基本名を使用して、その特定の出力ファイルを決定します。 詳細については、上記の SDK 固有のドキュメントを参照してください。
既定値は vcpkg-export-<date>-<time>
です。 スクリプト化された使用 export
では、決定論的な出力を確保するために、常にこのフラグを渡す必要があります。
--output-dir=
出力ディレクトリを指定します。
すべての最上位 SDK ファイルがこのディレクトリに生成されます。 このオプションはマニフェスト モードで必要です。 クラシック モードでは、これは省略可能であり、既定 では vcpkg ルート ディレクトリになります。
--prefab-artifact-id=
アーティファクト ID は、Maven の仕様に従ったプロジェクトの名前です。
--prefab-group-id=
GroupId は、Maven の仕様に従ってプロジェクトを一意に識別します。
--prefab-maven
Maven を有効にします。
--prefab-min-sdk=
Android でサポートされている SDK の最小バージョン。
--prefab-target-sdk=
Android ターゲットでサポートされている SDK のバージョン。
--prefab-version=
バージョンは、Maven の仕様に従ったプロジェクトのバージョンです。
--x-version-suffix=
エクスポートした Chocolatey パッケージに追加するバージョン サフィックスを指定します。
vcpkg