在 开发环境为: Mac-M芯片 - LLVM/Clang20+ + Ninja , 这个就是大部分C++开发者的工具链, 非常推荐 增加 Homebrew作为 分发 渠道, 支持 用户 在仓库中 手动编写 一个 配置文件夹 就能实现 自定义 Homebrew 分发, 等后续 用户下载量上来,申请 添加到 Homebrew 官方分发中; 无需改动代码,只需要添加一个配置文件夹即可, 可借助AI进行 直接生成, 需要说明的是, 自定义分发 暂不支持 流量统计, 可以 自行手动 添加 埋点, 1. homebrew 支持 两种方式, 一个是 源码到本地手动构建,一个是 拉取预编译包 (推荐第二种) 2. 若用户 已安装高版本LLVM/GCC( 这个可选功能 我没有 阅读你的 源码, 如果已存在 可忽略) 则无需 二次走 mcpp 内置的 LLVM/GCC版本; 3. man/help 帮助文档 , 走颜色美化, 一级标题 (Usage, Resource management, About mcpp itself 等 走 淡绿色等 进行 醒目显示) 4. 命令 自身支持 别名 调用, 虽然用户 可手动编写 别名到自身的shell配置文件中 5. [留言版 | 使用mcpp工具构建的项目(库/工具/应用)#260](https://github.com/mcpp-community/mcpp/issues/260) 这个 可做成一个命令, 支持用户 直接 阅读跳转 上传 评阅 相关的项目 6. 增加 优秀 mcpp 作为模板项目 提供学习阅读 ; 7. 如果 可以的话, 支持 CMake 与 mcpp 项目 互转译 , 两种 配置文件 相互的 转换 , 这个 功能属于 引擎级 功能, 如果有的话, 会 吸引相当一部分的 CMake 用户, 我自己 就是直接 手动创建 一个 管理 CMake + C++模块的 模板CLI 工具, 如果 该功能实现的话, 那么 CMake用户可以 走你这边 体验 C++ 模块了
Activity
[-]建议:Mac-M芯片 - LLVM/Clang20+ 增加 Homebrew 做分发主渠道[/-][+]建议:Mac-M芯片 - LLVM/Clang20+ 增加 Homebrew 做分发主渠道 等 7条建议[/+]ci: publish to a Homebrew tap after each release (#313) (#322)
Sunrisepeak commentedon Jul 31, 2026
Q1: homebrew 支持 两种方式, 一个是 源码到本地手动构建,一个是 拉取预编译包 (推荐第二种)
Q2: 若用户 已安装高版本LLVM/GCC( 这个可选功能 我没有 阅读你的 源码, 如果已存在 可忽略) 则无需 二次走 mcpp 内置的 LLVM/GCC版本;
Q3: man/help 帮助文档 , 走颜色美化, 一级标题 (Usage, Resource management, About mcpp itself 等 走 淡绿色等 进行 醒目显示)
Q4: 命令 自身支持 别名 调用, 虽然用户 可手动编写 别名到自身的shell配置文件中
mpmcppmexpkgmcpp emit xpkgmnewmcpp newmxparsemcpp xpkg parsembuildmcpp buildmtinstallmcpp toolchain installmrunmcpp runmtlistmcpp toolchain listmtestmcpp testmtdefaultmcpp toolchain defaultmcleanmcpp cleanmcdirmcpp cache dirmaddmcpp addmclistmcpp cache listmremovemcpp removemcinfomcpp cache infomupdatemcpp updatemcgcmcpp cache gcmsearchmcpp searchmilistmcpp index listmpublishmcpp publishmiaddmcpp index addmpackmcpp packmiremovemcpp index removemsdoctormcpp self doctormiupdatemcpp index updatemsenvmcpp self envmsconfigmcpp self configmsversionmcpp self versionmsexplainmcpp self explainQ5: 可做成一个命令, 支持用户 直接 阅读跳转 上传 评阅 相关的项目
Q6: 增加 优秀 mcpp 作为模板项目 提供学习阅读 ;
Q7: 支持 CMake 与 mcpp 项目 互转译 , 两种 配置文件 相互的 转换
docs: document the mcpp-short-cmd aliases in both READMEs (#313) (#323)
feat(standard): make c++20 a first-class level, keep c++23 the defaul…
speak-agent commentedon Aug 8, 2026
结论:作为「7 条建议合集」结掉,3 条已交付,其余 4 条各自归位。
核验基线
main@80291ca/ v2026.8.8.4,逐条落到代码:已交付的三条(逐条核过)
1 · Homebrew —
.github/workflows/homebrew-publish.yml(f4a7568);tap 仓库mcpp-community/homebrew-mcpp活跃,Formula/mcpp-m.rb已跟到version "2026.8.8.4",走预编译 release 资产,arm64 + macOS 14 门;README.md:118-128有入口。用mcpp-m是因为 homebrew-core 已占用mcpp(Matsui 预处理器),tap 内Aliases/{mcpp,mcpp-bin}指回来。4 · 短命令 —
xlings install mcpp-short-cmd(openxlings/xim-pkgindex#462),README 双语已记(8c5e0bd)。6 · 模板 —
mcpp new <name> --template <t>/--list-templates,带 e2e 与文档;imgui-m0.0.6 起带templates/{docking,window}。mcpp-short-cmd是 xim 包,靠xvm.add()注册 ⇒ 必须先有xlings命令。而 brew formula 的def install只写bin/mcpp,xlings 躺在#{libexec}/registry/bin/xlings仅作为MCPP_VENDORED_XLINGS给 mcpp 内部用;install.sh与 AUR 同样只把$PREFIX/bin写进 PATH,而 xlings 落在$PREFIX/registry/bin/。四条安装通道里三条拿不到这个能力,而你恰好在其中一条上。(顺带:
install.sh:13的自述$PREFIX/bin/{mcpp,xlings}是过时的,脚本里没有任何一处把 xlings 放进bin/。已登记。)第 2 条:归 #276,并且此前给的说法需要修正
[toolchain] default = "system"这个逃生门确实存在(src/build/prepare.cppm:1555-1558),但它在 macOS 上大概率选错编译器:没有$CXX时兜底到字面量g++(src/toolchain/probe.cppm:249-254),而 macOS 上which g++=/usr/bin/g++= Apple Clang;Homebrew 的 llvm 是 keg-only 且其 bin 目录里根本没有g++这个名字。mcpp 默认模板用import std,Apple CLT 给不出可用的 std 模块清单。而且这条路从未被验证过能构建成功 ——
tests/e2e/14_toolchain_fallback.sh:39-40自己写着「we don't verify success, only that the hard-error path doesn't fire」。今天真正能用的是显式指定编译器:
要把「本机已装工具链」变成一等公民,缺的是「外部工具链的申报入口」—— 这与 #177 / #276 是同一个缺口,已合并到 #276。
顺带修正一个本轮撞到的真 bug
--no-color在 TTY 下是空操作:src/ui.cppm:239的disable_color()只改g_color不置g_inited,而每个输出入口都先调init()(:233-237),于是g_color又被detect_color()覆盖回 true。CI 全走管道所以一直没人发现(无色的结果是对的,原因是错的)。已登记 #397 C-3,一行修好 —— 做第 3 条(help 着色)之前必须先修它,否则mcpp --help --no-color仍会出色。感谢这份清单,7 条里有 3 条直接变成了发布通道和模板机制。