清单模式
本文介绍了 kmpkg 的清单模式概念。
##什么是清单模式?
kmpkg有两种运行模式:经典模式和manifest 模式。对于大多数用户,我们建议使用清单模式。
清单模式使用声明性 JSON 文件来描述有关您的元数据
项目或包。清单文件需要具有
kmpkg.json 名称。
通过运行“kmpkg install”命令来启用清单模式
工作目录中的清单文件(kmpkg.json)。继续阅读有关详细信息
如何以清单模式安装软件包。
还需要清单模式才能使用高级功能,例如 版本控制 和 自定义注册表。
端口中的清单文件
所有 kmpkg 端口必须包含一个“kmpkg.json”文件,该文件描述有关以下内容的元数据: 他们安装的软件包。
kmpkg 将包清单中的元数据用于各种目的,例如, 计算依赖树,按名称或描述搜索包, 解决特征等
包清单示例
{
"name": "fmt",
"version": "10.1.1",
"description": "Formatting library for C++. It can be used as a safe alternative to printf or as a fast alternative to IOStreams.",
"homepage": "https://github.com/fmtlib/fmt",
"license": "MIT",
"dependencies": [
{
"name": "kmpkg-cmake",
"host": true
},
{
"name": "kmpkg-cmake-config",
"host": true
}
]
}
项目中的清单文件
在项目中使用清单文件的主要目的是声明您的 依赖关系。使用项目清单时,您可以指定版本 约束和覆盖以锁定依赖项的特定版本。这 该功能在经典模式下不可用。
项目清单示例
{
"dependencies": [ "fmt", "zlib" ],
"builtin-baseline": "3426db05b996481ca31e95fff3734cf23e0f51bc",
"overrides": [
{ "name": "zlib", "version": "1.2.8" }
]
}
配置文件
kmpkg 可以通过 kmpkg-configuration.json 文件进行配置以添加更多
包注册表 或
覆盖端口和三元组 位置。