如何在macOS上将Clang编译器升级至Clang-16以支持C++23特性?
macOS下Homebrew装了LLVM 16,clang还是显示14?这么解决
不用卸载Clang 14。你现在看到的是Apple自带的clang(属于Command Line Tools),系统不少工具都依赖它,删了容易出问题。Homebrew装的llvm@16是独立版本,只是当前终端优先调用了系统自带的而已。
让Homebrew的LLVM 16 clang生效的步骤:
- 先查Homebrew装的llvm@16路径:执行
brew info llvm@16,输出里会有类似/usr/local/opt/llvm@16/bin的路径(M系列芯片对应路径是/opt/homebrew/opt/llvm@16/bin)。 - 把这个路径加到shell的PATH最前面,保证优先调用它:
- 用zsh的话,打开
~/.zshrc,添加一行:export PATH="/usr/local/opt/llvm@16/bin:$PATH"(M系列替换成对应路径)。 - 用bash的话,编辑
~/.bash_profile或~/.bashrc,添加同样内容。
- 用zsh的话,打开
- 重载配置文件:
source ~/.zshrc(zsh)或source ~/.bash_profile(bash)。 - 验证版本:执行
clang --version,现在应该显示LLVM 16的版本,比如:clang version 16.0.6 Target: x86_64-apple-darwin21.6.0 Thread model: posix InstalledDir: /usr/local/opt/llvm@16/bin
- 先查Homebrew装的llvm@16路径:执行
额外提示:编译代码时要指定C++20/23标准,直接加参数即可:
clang++ -std=c++23 your_code.cpp -o your_program。
内容的提问来源于stack exchange,提问作者JohnnyUtah
相关产品推荐
相关产品推荐

