Sorry for writing this shitty guide but it’s an issue that doesn’t seem to be answered on the internet, and I really needed a recent version of clang++ on macOS for a new job. Feel free to make fun of me if there is an easier way to do it.
-
Install Nix (usually used for reproducible builds but you can use it too for virtual environments): https://nixos.org/download.html#nix-install-macos
-
Create a file called
shell.nix
at the root of your project, and put the following code inside:
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
nativeBuildInputs = with pkgs.buildPackages; [ llvmPackages_16.clangUseLLVM ];
}
-
Run
nix-shell
-
Check that you have the good version with the command
clang++ -v
It’s not a perfect solution, but it’s mostly automated, you’ll be able learn various topics of C++20 with this, and the stupid “clang 11” from Apple is not hijacking the latest version anymore.