cppinsights 编译安装

cppinsights 是一款C++源代码到源代码的转换,它可以把C++中的模板、auto以及C++11新特性展开。可以清楚的看到编译器做了哪些事情。

1 编译环境

  • gcc 7.3以上
  • llvm+clang 10.0以上
  • pyhon3
  • cmake 3.13以上
    以下主要对llvm+clang 10 进行安装

2 编译安装llvm+clang 10

2.1 下载源代码

https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.0/llvm-project-10.0.0.tar.xz
或者
https://pan.baidu.com/s/1YPy705mEExKgC9Pw2T14ew 提取码: dcv6

2.2 解压

tar -xvf llvm-project-10.0.0.tar.xz

2.3 配置编译环境

进入到刚刚解压的文件夹
创建 build 文件夹,以后的编译工作在build文件夹下进行

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_ASSERTIONS=On -DLLVM_PARALLEL_LINK_JOBS=4  -DLLVM_TARGETS_TO_BUILD="X86" -DLLVM_ENABLE_PROJECTS="clang" ../llvm

选项说明

  • -DCMAKE_BUILD_TYPE=Release 表示采用发布版本,
  • -DLLVM_ENABLE_ASSERTIONS=On 表示开启断言检查
  • -DLLVM_PARALLEL_LINK_JOBS=4 表示连接时,同时可以进行多少个连接。最好与之后的make -j 设置同样的数目。
  • -DLLVM_TARGETS_TO_BUILD="X86" 表示编译的目标是X86架构的CPU。
  • -DLLVM_ENABLE_PROJECTS="clang" 表示同时编译clang, 因为clang 是llvm 项目的子项目。如果想编译其他子项目可以在此处添加,中间用分号隔开。或者也可以单独去clang 文件夹下单独编译安装

2.4 编译安装

make -j4 
make install

注意:此处编译需要很长时间,可以开启最大的进程编译。如果在make -j4 出现编译器错误,不用在意,继续make -j4 ,经过多次的make 就可以编译成功了。
在make install 时需要管理员权限。


image.png

此处表示clang 安装成功了

3 编译安装cppinsights

git clone https://github.com/andreasfertig/cppinsights.git

cd cppinsights

mkdir build

cd build

cmake  -DCMAKE_CXX_COMPILER=/usr/local/bin/clang++  ..

make -j4

cp insights /usr/local/bin/

注意:
-DCMAKE_CXX_COMPILER 选项指定clang++ 的路径,

3.1 使用insights

insights  -- -std=c++17

参考:https://github.com/andreasfertig/cppinsights
https://github.com/llvm/llvm-project/tree/llvmorg-10.0.0

你可能感兴趣的:(cppinsights 编译安装)