Supports Linux x86_64, macOS 14+ Apple Silicon, and Windows x86_64 / PowerShell 5.1+. Tool versions are managed in .xlings.json.
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/v2026.10.18.1/tools/other/quick_install.sh | bash -s v2026.10.18.1
export PATH="$HOME/.xlings/subos/current/bin:$PATH"Windows PowerShell:
irm https://raw.githubusercontent.com/mcpp-community/d2mcpp/main/scripts/install-xlings.ps1 | iex
$env:Path = "$env:USERPROFILE\.xlings\subos\current\bin;$env:Path"Continue with the README. If a command is not found, reopen your terminal or apply the PATH command above.
After installing xlings, you can also clone the course. Replace the URL with your fork if needed:
git clone https://github.com/mcpp-community/d2mcpp.git
cd d2mcppPrepare from the course root; run git pull first when updating. These scripts preserve your exercise code and progress.
# Linux / macOS
bash scripts/setup.sh# Windows PowerShell
powershell -NoProfile -ExecutionPolicy Bypass -File .\scripts\setup.ps1Then verify and practice:
mcpp test -p solutions
d2x checkerWait until ready, then run d2x checker in a terminal. If creation fails, check the creation log. To retry inside the container:
bash .devcontainer/postCreate.shRun from the course root to expose the error, then retry preparation:
xlings --version
mcpp --version
d2x --version
mcpp run -p d2x/buildtools -- describeUpdate the course and rerun preparation. If the error persists, choose an unused toolchain directory and repeat preparation and verification:
# Linux / macOS
export MCPP_HOME="$HOME/.mcpp-d2mcpp-recovered"# Windows PowerShell
$env:MCPP_HOME = "$env:USERPROFILE\.mcpp-d2mcpp-recovered"This downloads a new toolchain, keeping the old directory and progress. Set the same MCPP_HOME in future sessions. Undo with unset MCPP_HOME on Unix or Remove-Item Env:MCPP_HOME in PowerShell.
Still stuck? Open an issue with your OS, tool versions, command and error. Keep API keys out of reports.