用 Clang 编译
由于 Clang 前端是为与 GCC 兼容而设计的,因此当你在构建脚本中用 clang++
交换 g++
时,大多数可以通过 GCC 编译的程序都会编译。如果没有给出 -std=version
,将使用 gnu11。
习惯 MSVC 的 Windows 用户可以将 cl.exe
与 clang-cl.exe
交换。默认情况下,clang 尝试与已安装的最高版本的 MSVC 兼容。
在使用 visual studio 进行编译的情况下,可以通过更改项目属性中的 Platform toolset
来使用 clang-cl。
在这两种情况下,clang 只能通过其前端兼容,但它也会尝试生成二进制兼容的目标文件。clang-cl 的用户应注意与 MSVC 的兼容性尚未完成 。
要使用 clang 或 clang-cl,可以使用某些 Linux 发行版上的默认安装或者与 IDE 绑定在一起的默认安装(如 Mac 上的 XCode)。对于此编译器的其他版本或未安装此版本的平台,可以从官方下载页面下载 。
如果你使用 CMake 构建代码,通常可以通过设置 CC
和 CXX
环境变量来切换编译器,如下所示:
mkdir build
cd build
CC=clang CXX=clang++ cmake ..
cmake --build .
另见 Cmake 简介 。