配置即代码
Catboy™ 使用 YAML 文件描述项目结构,配置清晰直观,易于理解和维护。
Catboy™ 使用构建蓝图文件(YAML 格式)描述项目结构,配置清晰直观,易于理解和维护。
targets: # 编译目标声明开始
myapp: # 目标 myapp 声明开始
build: # 目标 myapp 的构建声明开始
type: executable # 构建类型: 可执行程序
sources: # 源代码列表声明开始
c: ["src/**/*.c"] # 包含 src 目录下所有 .c 文件
includes: ["inc"] # 头文件搜索路径 (-I) 添加项目目录下的 inc
links: ["pthread"] # 链接 pthread 线程库 (-l)
flags: ["-Wall", "-O2"] # 编译选项: 开启全部警告, 优化级别 2Catboy™ 与 Visual Studio® Code 深度集成,提供最先进,便捷与舒适的 C/C++ 开发体验。

通过安装 Catboy™ for Visual Studio® Code 插件,你便可以在自己最喜爱的 VS Code 中使用 Catboy,无需安装新的 IDE 软件,也无需修改任何 VS Code 的个人设置。
插件支持 Catboy 项目管理,一键构建,以及 Catboy 配置文件的语法高亮等功能。与此同时,插件配合 Catboy 主程序实现了 C/C++ 源代码解析,能够实现精准的符号查询与跳转。
Catboy™ 及 Catboy™ for Visual Studio® Code 插件支持全部主流的操作系统,包括 Windows®,Linux® 与 macOS®。Catboy 为所有操作系统平台带来了优秀且一致的 C/C++ 开发体验。你可以自由选择喜爱的平台使用 Catboy。
与此同时,Catboy 配置文件也具备跨平台能力。只需一份配置文件,可以在所有操作系统上使用,Catboy 会自动处理操作系统的差异。
Catboy™ 能够分析项目,在允许并发时有效利用多 CPU 进行并行编译。得益于 Catboy 的优秀设计,Catboy 的构建速度优于传统的构建系统。
编译 Azure RTOS NetX Duo 网络协议栈工程的时间比较
| 构建系统 | 构建时间 |
|---|---|
| Catboy | 25.973 秒 |
| GNU Make | 39.361 秒 |
-j 参数,Catboy 默认开启并行编译。Catboy™ 支持类似 KConfig 的高级项目配置。允许用户声明与修改配置项。Catboy 会自动解析配置项的数值类型以及依赖关系,并能够自动生成配置宏以及头文件。此外,Catboy 具备项目自动发现能力,能够解析不同项目之间配置项的依赖关系,允许你关联其他项目的配置项。
Catboy 提供直观易用的终端用户界面(TUI)来进行项目配置。并在未来版本拓展 VS Code 插件支持。
