命令: kmpkg export
kmpkg 导出命令的命令行参考。创建独立的 SDK 捆绑包。
摘要
kmpkg export [options] {<package>... | --x-all-installed}
说明
将生成的包从已安装目录导出到独立的开发人员 SDK。
export 生成独立、可分发的 SDK(软件开发工具包),可在另一台计算机上使用而无需单独获取 kmpkg。 该结构包含:
- 所选包的预生成二进制文件
- 其可转移依赖项
- 集成文件,例如 CMake 工具链或 MSBuild 属性/目标
export 命令不会安装任何包或可转移依赖项。 它仅导出已安装的包。
经典模式
在经典模式下,kmpkg export 接受三元组限定的包规范参数(例如:zlib:x64-windows)
可以通过向命令行添加 <port name>:<triplet> 参数来指定要导出的包。
例如,要导出 x64-windows 和 x64-linux 的 sqlite 包,请使用:
kmpkg export sqlite:x64-windows sqlite:x64-linux --zip
此命令以 zip 格式导出指定的包。 在运行 kmpkg export 之前,必须安装 sqlite:x64-windows 和 sqlite:x64-linux。
清单模式
在清单模式下,该命令导出所有当前安装的包。 安装目录包 括清单 (kmpkg.json) 中声明的所有包及其可转移依赖项。 使用此命令之前运行 kmpkg install,以确保已安装所有必需的包。
在此模式下,无法指定要导出的单个包。 该命令将整个安装状态作为一个实体进行操作,遵循清单文件中指定的依赖项和版本。
另一个区别是 --output-dir 选项的要求。 此选项指定将存储导出包的目录。
例如,从清单目录
kmpkg export --zip --output-dir=.\exports
将所有当前安装的包导出到 zip 文件中的 .\exports 目录。 --zip 选项指定导出的包应压缩为 zip 文件。
标准集成
大多数导出格式都包含一组标准集成 文件:
- 位于
/scripts/buildsystems/kmpkg.cmake的 CMake 工具链 - 位于
/scripts/buildsystems/msbuild/kmpkg.props和/scripts/buildsystems/msbuild/kmpkg.targets的 MSBuild 属性/目标 - 安装树位于 /
某些导出格式与此标准组不同;有关更多详细信息,请参阅下面单独的格式帮助。
Formats
官方支持的 SDK 格式:
试验性 SDK 格式(随时可能更改或移除):
Raw Directory
kmpkg export --raw [options] <package>...
在 <output-dir>/<output>/ 创建未解压缩的目录布局。
包含标准集成文件。
Zip
kmpkg export --zip [options] <package>...
在 <output-dir>/<output>.zip 创建未解压缩的 zip 目录布局。
包含标准集成文件。
7Zip
kmpkg export --7zip [options] <package>...
在 <output-dir>/<output>.7z 处创建 7zip 目录布局。
包含标准集成文件。
IFW
本节介绍 kmpkg 的实验性功能,该功能可能随时更改或删除。
kmpkg 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
本节介绍 kmpkg 的实验性功能,该功能可能随时更改或删除。
kmpkg export --x-chocolatey [options] <package>...
导出 Chocolatey 包。
格式特定选项:
Prefab
本节介绍 kmpkg 的实验性功能,该功能可能随时更改或删除。
kmpkg export --prefab [options] <package>...
导出为 Prefab 格式。
格式特定选项:
--prefab-artifact-id--prefab-group-id--prefab-maven--prefab-min-sdk--prefab-target-sdk--prefab-version
选项
所有 kmpkg 命令都支持一组通用选项。
<package>
这是将包含在 SDK 中的顶级生成包的列表。 这些包的所有依赖项也将包含在内,以确保生成的 SDK 是独立的。
包语法
<port name>:<triplet>