77## 快速使用
88
99``` bash
10- mcpp add ftxui@6.1.9 # 添加依赖到 mcpp.toml
11- mcpp build # 自动拉取源码 + 构建
10+ mcpp add mcpplibs:cmdline@0.0.2 # 模块化库
11+ mcpp add compat:ftxui@6.1.9 # 非模块化兼容库
12+ mcpp build # 自动拉取源码 + 构建
1213```
1314
15+ ## 命名空间
16+
17+ mcpp 0.0.6+ 使用显式 ` namespace ` 字段区分包的类别:
18+
19+ | namespace | 含义 | 鼓励使用 |
20+ | ---| ---| ---|
21+ | ` mcpplibs ` | 模块化 C++23 库(mcpplibs 生态) | ✅ 推荐 |
22+ | ` mcpplibs.capi ` | C API 的 C++23 模块封装 | ✅ 推荐 |
23+ | ` compat ` | 非模块化 C/C++ 库(兼容性支持) | ⚠️ 建议优先使用模块化替代 |
24+
1425## 已收录的包
1526
16- ### mcpplibs 模块化库
27+ ### ` mcpplibs ` — 模块化库
28+
29+ | 包名 | 版本 | 简介 | 仓库 |
30+ | ------| ------| ------| ------|
31+ | ` cmdline ` | 0.0.2 | 命令行解析框架 — ` import mcpplibs.cmdline; ` | [ mcpplibs/cmdline] ( https://github.com/mcpplibs/cmdline ) |
32+ | ` tinyhttps ` | 0.2.2 | 轻量 HTTP/HTTPS 客户端(SSE 流式) — ` import mcpplibs.tinyhttps; ` | [ mcpplibs/tinyhttps] ( https://github.com/mcpplibs/tinyhttps ) |
33+ | ` llmapi ` | 0.2.5 | 大语言模型 API 客户端(OpenAI/Anthropic 兼容) — ` import mcpplibs.llmapi; ` | [ mcpplibs/llmapi] ( https://github.com/mcpplibs/llmapi ) |
34+ | ` xpkg ` | 0.0.39 | xpkg V1 规范的 C++23 参考实现 — ` import mcpplibs.xpkg; ` | [ openxlings/libxpkg] ( https://github.com/openxlings/libxpkg ) |
35+ | ` templates ` | 0.0.1 | 最小化模块库模板 — ` import mcpplibs.templates; ` | [ mcpplibs/templates] ( https://github.com/mcpplibs/templates ) |
36+
37+ ### ` mcpplibs.capi ` — C API 封装
1738
1839| 包名 | 版本 | 简介 | 仓库 |
1940| ------| ------| ------| ------|
20- | ` mcpplibs.cmdline ` | 0.0.2 | 命令行解析框架 — ` import mcpplibs.cmdline; ` | [ mcpplibs/cmdline] ( https://github.com/mcpplibs/cmdline ) |
21- | ` mcpplibs.tinyhttps ` | 0.2.2 | 轻量 HTTP/HTTPS 客户端(SSE 流式) — ` import mcpplibs.tinyhttps; ` | [ mcpplibs/tinyhttps] ( https://github.com/mcpplibs/tinyhttps ) |
22- | ` mcpplibs.llmapi ` | 0.2.5 | 大语言模型 API 客户端(OpenAI/Anthropic 兼容) — ` import mcpplibs.llmapi; ` | [ mcpplibs/llmapi] ( https://github.com/mcpplibs/llmapi ) |
23- | ` mcpplibs.capi.lua ` | 0.0.3 | Lua 5.4 C API 的 C++23 模块封装 — ` import mcpplibs.capi.lua; ` | [ mcpplibs/lua] ( https://github.com/mcpplibs/lua ) |
24- | ` mcpplibs.xpkg ` | 0.0.39 | xpkg V1 规范的 C++23 参考实现 — ` import mcpplibs.xpkg; ` | [ openxlings/libxpkg] ( https://github.com/openxlings/libxpkg ) |
25- | ` mcpplibs.templates ` | 0.0.1 | 最小化模块库模板 — ` import mcpplibs.templates; ` | [ mcpplibs/templates] ( https://github.com/mcpplibs/templates ) |
41+ | ` lua ` | 0.0.3 | Lua 5.4 C API 的 C++23 模块封装 — ` import mcpplibs.capi.lua; ` | [ mcpplibs/lua] ( https://github.com/mcpplibs/lua ) |
42+
43+ ### ` compat ` — 非模块化兼容库
2644
27- ### 第三方 C/C++ 库
45+ > 这些库的上游没有 C++23 模块化支持,mcpp 通过 Form B 描述文件提供兼容性构建。
46+ > 建议优先使用对应的模块化封装(如 ` mcpplibs.capi.lua ` 替代 ` compat.lua ` )。
2847
2948| 包名 | 版本 | 简介 |
3049| ------| ------| ------|
@@ -36,13 +55,13 @@ mcpp build # 自动拉取源码 + 构建
3655### 依赖关系链
3756
3857```
39- mcpplibs. llmapi
40- └── mcpplibs. tinyhttps
41- └── mbedtls ← mcpp 自动传递,无需手动声明
58+ mcpplibs: llmapi
59+ └── mcpplibs: tinyhttps
60+ └── compat: mbedtls ← mcpp 自动传递,无需手动声明
4261
43- mcpplibs. xpkg
44- └── mcpplibs.capi. lua
45- └── lua ← 同上
62+ mcpplibs: xpkg
63+ └── mcpplibs.capi: lua
64+ └── compat: lua ← 同上
4665```
4766
4867mcpp 0.0.3+ 的 transitive walker 自动沿链路传播头文件和依赖,消费者只需声明直接依赖。
0 commit comments