用 Clang 编译

由于 Clang 前端是为与 GCC 兼容而设计的,因此当你在构建脚本中用 clang++交换 g++时,大多数可以通过 GCC 编译的程序都会编译。如果没有给出 -std=version,将使用 gnu11。

习惯 MSVC 的 Windows 用户可以将 cl.execlang-cl.exe 交换。默认情况下,clang 尝试与已安装的最高版本的 MSVC 兼容。

在使用 visual studio 进行编译的情况下,可以通过更改项目属性中的 Platform toolset 来使用 clang-cl。

在这两种情况下,clang 只能通过其前端兼容,但它也会尝试生成二进制兼容的目标文件。clang-cl 的用户应注意与 MSVC 的兼容性尚未完成

要使用 clang 或 clang-cl,可以使用某些 Linux 发行版上的默认安装或者与 IDE 绑定在一起的默认安装(如 Mac 上的 XCode)。对于此编译器的其他版本或未安装此版本的平台,可以从官方下载页面下载

如果你使用 CMake 构建代码,通常可以通过设置 CCCXX 环境变量来切换编译器,如下所示:

mkdir build
cd build
CC=clang CXX=clang++ cmake ..
cmake --build .

另见 Cmake 简介