Community图像github.com

build2-community/build2

针对使用 build2 工具链的 C/C++ 项目的构建、测试、打包和依赖管理。涵盖构建系统驱动(b)、包管理器(bpkg)、项目依赖管理器(bdep)、任务运行器(bx)和仓库 Web 界面(brep)。适用于:编写或读取构建文件、诊断构建错误、解决包依赖冲突、为 cppget.org 打包库、设置构建配置、配置安装、编写测试脚本、托管包仓库或运行任何 b/bpkg/bdep/bx/brep-* 命令。

build2 是什么?

该技能为 build2 工具链提供结构化的参考文档,build2 是一个集成的 C/C++ 构建工具链,包含构建系统 (`b`)、包管理器 (`bpkg`)、项目依赖管理器 (`bdep`)、任务运行器 (`bx`) 和仓库 Web 界面 (`brep`)。它通过一个大型的索引表,涵盖了从构建文件语法、编译选项、库导入、测试脚本编写、包发布到第三方库打包、CI/CD 设置和自定义规则开发等所有常见任务。每个任务都直接链接到对应的指南、操作指南或脚本,使得开发者可以快速准确地找到所需信息。该技能适用于 Cursor、Claude Code 等 AI 编码助手,能显著提升使用 build2 进行 C/C++ 开发时的效率。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/build2-community/build2-agent-skills/tree/HEAD

Installed? Explore more 图像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

build2 技能

build2 是一个集成的 C/C++ 构建工具链,结合了构建系统 (b)、包管理器 (bpkg)、项目依赖管理器 (bdep)、任务运行器 (bx) 和仓库 Web 界面 (brep)。此技能为这五个工具提供结构化的参考文档。

从 INDEX.md 开始获取完整的命令索引和导航,或使用下面的表格直接跳转到相关文件。

何时使用

任务起始文件
编写或读取构建文件guides/build2-intro-concepts.md
构建文件语言语法 (if/loop/switch/patterns)guides/build2-buildfile-language.md
构建文件指令、名称模式和属性guides/build2-directives-patterns.md
将目标定位到 src 而非 out(@./ 限定符)guides/build2-targets-variables.md
使用 fsdir{} 创建嵌套目录HOWTO/fsdir-parent-chain.md
查找构建文件函数签名、标志或纯度guides/build2-functions.md
库项目、目标导入、子项目guides/build2-projects-advanced.md
导入库以获取元数据并仍然链接它(包括已安装的)HOWTO/import-immediate-vs-ordinary.md
为仅 dlopen 的依赖项添加 rpathHOWTO/rpath-unlinked-dependency.md
编写临时配方({{ }})HOWTO/ad-hoc-recipe.md
通过 ~/^ 名称模式在多个目标之间共享一个配方体HOWTO/ad-hoc-pattern-rule.md
创建 PHONY-equivalent (alias{}) 目标HOWTO/alias-targets.md
哪些编译/链接选项属于构建文件HOWTO/buildfile-compile-options.md
将编译标志放置在编译器模式或 -std 之后HOWTO/buildfile-compile-options.md
为目标特定列表选择 += vs =HOWTO/buildfile-compile-options.md
将 CMake 项目移植到 build2 构建文件HOWTO/migrate-from-cmake.md
保持构建图与配置无关HOWTO/config-independent-build-graph.md
C/C++ 编译和链接选项,模块支持guides/build2-modules-cxx.md
C-公共变量,DLL 导出,编译数据库,编译器类 vs IDguides/build2-modules-cc.md
bin/liba/libs/exe 目标类型guides/build2-modules-bin.md
匹配上游共享库名称或 SONAMEHOWTO/match-upstream-library-name.md
创建仅头文件(无二进制)库HOWTO/header-only-library.md
链接 pthreadHOWTO/link-pthread.md
链接系统库 (-lm, -ldl, advapi32.lib)HOWTO/link-system-library.md
在 DLL 中嵌入 Windows .rc 资源 (VERSIONINFO)HOWTO/windows-resource-file.md
在链接目标上将源文件排列在库之前HOWTO/link-prerequisite-order.md
使库组件可选HOWTO/optional-library-components.md
使用自动生成的 C/C++ 头文件HOWTO/generated-headers.md
创建提供 main() 的库HOWTO/library-provides-main.md
按平台禁用共享库变体HOWTO/disable-shared-lib-per-platform.md
从可执行文件或库导出元数据HOWTO/target-metadata.md
针对真实前缀本地测试已安装的导入!HOWTO/local-installed-import.md
添加/删除包,解决版本冲突bpkg/README.md
构建包、升级或修补bpkg/bpkg-pkg-build.md
创建 bpkg 配置(独立,非 bdep 项目)bpkg/bpkg-cfg-create.md
创建配置并在其中初始化 bdep 项目bdep/bdep-init.md
在现有配置中初始化项目bdep/bdep-init.md
将 manifest/lockfile 与配置同步bdep/bdep-sync.md
创建新项目bdep/bdep-new.md
查看 bdep new 选项组合创建的内容bdep/bdep-new-layouts.md
发布包bdep/bdep-publish.md
发布新版本bdep/bdep-release.md
编写测试脚本guides/testscript-summary.md
测试脚本命令、重定向、正则表达式、清理、内建命令guides/testscript-commands.md
使用 Testscript 清理行为异常的测试HOWTO/sanitize-tests.md
在测试中正确使用 assert()HOWTO/assert-in-tests.md
带有额外依赖项的测试(单独的测试包)HOWTO/tests-extra-dependencies.md
编写 lib-tests/examples/benchmarks 摘要或 PACKAGE-READMEHOWTO/tests-extra-dependencies.md
仅构建测试或安装所需的内容HOWTO/update-for-test-install.md
组合运行时测试夹具(子帮助程序,源码树数据)HOWTO/test-runtime-fixtures.md
赋予测试访问源码树数据目录的权限HOWTO/test-runtime-fixtures.md
从 b dist 归档中排除测试夹具/资源HOWTO/exclude-test-data-from-dist.md
使用 Testscript 测试已导入的可执行文件(例如,包自身的 tests/ 中的 exe{})HOWTO/test-imported-executable.md
解决“已更新但[不]用于安装”的冲突HOWTO/for-install-conflicts.md
打包第三方库guides/packaging-guide-summary.md
运行端到端的 cppget.org 打包工作流skills/build2-package/SKILL.md
运行本地发布前打包健全性检查skills/build2-review/SKILL.md
命名第三方包、项目和仓库HOWTO/package-naming.md
在审核分支上启动第三方包guides/packaging-guide-summary.md
从 depends 子句中要求依赖特性HOWTO/require-dependency-feature.md
pkg 和 git 仓库如何查找依赖项guides/packaging-guide-summary.md
测试和发布第三方包guides/packaging-guide-testing.md
审核第三方包提交guides/packaging-guide-review.md
打包版本管理(新修订版、新版本)guides/packaging-guide-version-management.md
打包反模式,不应做什么guides/packaging-guide-antipatterns.md
打包第三方项目时处理私有头文件HOWTO/third-party-private-headers.md
安装手册页(非第 1 节的任何章节)HOWTO/man-pages-install.md
使用非规范名称打包上游变更日志HOWTO/package-changes-file.md
bpkg 包名称规则、版本格式、约束语法guides/bpkg-package-name-version.md
在清单中表达包许可证(SPDX、other:、多许可证)guides/packaging-license.md
安装或引导工具链guides/install-bootstrap.md
从仓库安装工具链(步骤 3)guides/install-toolchain.md
升级已安装的工具链(脏更新或阶段更新)guides/install-upgrade.md
使用 .in 模板预处理或 bash 模块guides/build2-modules-misc.md
version 模块:变量、快照版本、版本头文件guides/build2-module-version.md
处理 config.h.in / config.h.cmake / config.h.mesonguides/build2-modules-autoconf.md
添加项目特定的 autoconf 检查guides/build2-autoconf-project-checks.md
向 autoconf 内建目录贡献检查guides/build2-autoconf-contributing-checks.md
在构建文件中使用 autoconf 检查结果guides/build2-autoconf-buildfile.md
kconfig: Kconfig 语言参考(配置条目、依赖项、菜单、选择)guides/kconfig-summary.md
kconfig: 构建系统集成和示例guides/kconfig-integration.md
kconfig: 辅助选项、非交互/随机配置配方guides/kconfig-patterns.md
创建自定义的 build2 模块(规则、初始化、引导)guides/build2-module-hello.md
理解 build2 模块 API(入口点,module_functions)guides/build2-module-hello.md
开发生成阶段 build2 模块guides/build2-module-hello.md
编写自定义的 build2 规则(匹配、应用、配方、注册)HOWTO/write-build2-rule.md
设置 build2 模块开发环境guides/build2-module-dev-setup.md
为模块开发拆分主机/目标构建配置guides/build2-module-dev-setup.md
在其他项目中使用开发者版本模块guides/build2-module-dev-setup.md
使用目标三元组设置交叉编译HOWTO/cross-compilation.md
管理调试/发布/消毒配置HOWTO/multiple-configurations.md
为 build2 项目设置 CI/CD 流水线HOWTO/ci-cd-setup.md
针对特定平台过滤自动化的 CI 构建HOWTO/builds-ci-filtering.md
跟踪 build-include/build-exclude 模式是否匹配机器人名称HOWTO/builds-ci-filtering.md
读取 cppget.org CI 结果(测试-安装徽章)HOWTO/ci-results.md
在特定 CI 机器人上请求系统提供的库HOWTO/sys-build-config.md
为工具链开发设置 build2HOWTO/toolchain-dev-setup.md
创建新的 bpkg 包目录scripts/new-package.sh
运行 .bx 脚本或命名任务bx/bx.md
.bx 脚本入门(实用演练)HOWTO/bx-script.md
验证工具链是否已安装scripts/verify-install.sh
为 config.cxx= 查找 C++ 编译器scripts/probe-compiler.sh
验证包清单文件scripts/check-manifest.sh
在 bpkg 配置中运行测试scripts/run-tests.sh
检查项目名称/版本/根目录scripts/show-project-info.sh
检查文档中的断开链接scripts/check-links.sh
部署 brep 包仓库 Web 界面brep/README.md
将仓库数据加载到 brepbrep/brep-load.md
在 brep 中过期旧的构建或归档租户brep/brep-clean.md
设置或迁移 brep 数据库brep/brep-migrate.md
监控 brep 构建基础设施的延迟brep/brep-monitor.md
清理二进制分发包上传目录brep/brep-upload-bindist-clean.md
实现包提交或 CI 处理器brep/brep-request-handling.md
理解 brep 包提交协议brep/brep-request-handling.md
理解 brep CI 请求协议brep/brep-request-handling.md
排查错误HOWTO/troubleshooting.md
按主题分类的实用配方HOWTO/README.md
术语参考GLOSSARY.md

快速工具定位

二进制角色何时加载
b构建系统

…

[截断以进行翻译]

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相关技能