GitHub - mcpp-community/mcpp: A modern C++ module-first build tool — written in pure C++23 modules, fully self-hosted / 一个 现代C++ 模块化构建工具 — 纯 C++23 模块编写(已实现自举)
Pangram verdict · v3.3
We believe that this text is a mix of AI and human-written content.
AI likelihood · overall
MixedArticle text · 548 words · 4 segments analyzed
A modern C++ module-first build tool — written in pure C++23 modules, fully self-hosted English | 简体中文 Documentation · Getting Started · mcpp.toml Guide · Examples · Toolchains Package index mcpp-index · Module libraries mcpplibs · Community Forum · Issues · Releases Highlights Native C++23 module support — import std handled automatically, file-level incremental builds, automatic module dependency analysis, zero manual configuration Pure modular self-hosting — mcpp itself consists of 43+ C++23 modules and builds itself; the module pipeline is battle-tested Works out of the box — one-command install, bundled GCC 16 / LLVM 20 toolchains downloaded into an isolated sandbox, never polluting your system Integrated dependency management — SemVer constraint resolution, lockfile, cross-project BMI cache, custom package indices Multi-package workspaces — unified lockfile and version management for larger projects Why mcpp mcpp is built specifically for C++23 module-first development. If you want to use import std, module interface units (.cppm), module partitions, and other modern C++ features in your project, mcpp gives you a smooth, friendly experience on Linux, macOS ARM64, and Windows x86_64: Modular by default — projects created by mcpp new use C++23 modules directly; import std just works File-level incremental builds — three-layer optimization based on P1689 dyndep (front-end dirty check + per-file scanning + BMI restat); only the modules that actually changed get recompiled Create & build in one go — mcpp new hello && cd hello && mcpp build; toolchains install automatically, no compiler or build-system setup required A modular ecosystem — mcpplibs offers a growing set of directly import-able C++ module libraries, plus support for custom package indices NoteEarly-stage project — mcpp is under active development; interfaces and behavior may change in future releases. Developers interested in modern C++ module-first build tooling are welcome to contribute. Questions / feedback / ideas — drop a note in issues.
Getting Started Install Install via xlings (recommended) xlings install mcpp -y Don't have xlings yet? Click for the install command Linux / macOS curl -fsSL https://d2learn.org/xlings-install.sh | bash Windows — PowerShell irm https://d2learn.org/xlings-install.ps1.txt | iex More about xlings → xlings.d2learn.org Optional — short commands (mp, mbuild, mrun, …) xlings install mcpp-short-cmd -y Registers 30 shims, so mcpp build becomes mbuild.
Naming rule: initial of every word but the last, plus the last word in full — mcpp self doctor → msdoctor. mp is bare mcpp. They alias the mcpp shim rather than a fixed binary, so xlings use mcpp <ver> switches them too.
Short Expands to Short Expands to mp mcpp mexpkg mcpp emit xpkg mnew mcpp new mxparse mcpp xpkg parse mbuild mcpp build mtinstall mcpp toolchain install mrun mcpp run mtlist mcpp toolchain list mtest mcpp test mtdefault mcpp toolchain default mclean mcpp clean mcdir mcpp cache dir madd mcpp add mclist mcpp cache list mremove mcpp remove mcinfo mcpp cache info mupdate mcpp update mcgc mcpp cache gc msearch mcpp search milist mcpp index list mpublish mcpp publish miadd mcpp index add mpack mcpp pack miremove mcpp index remove msdoctor mcpp self doctor miupdate mcpp index update msenv mcpp self env msconfig mcpp self config msversion mcpp self version msexplain mcpp self explain Other options Option 1 — one-line installer (Linux x86_64/aarch64, macOS ARM64) curl -fsSL https://github.com/mcpp-community/mcpp/releases/latest/download/install.sh | bash This installer does not support Windows; use the PowerShell xlings route above.