美文网首页
cppinsights 编译安装

cppinsights 编译安装

作者: instant2017 | 来源:发表于2020-08-10 15:23 被阅读0次

    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 <YOUR_CPP_FILE> -- -std=c++17
    

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

    相关文章

      网友评论

          本文标题:cppinsights 编译安装

          本文链接:https://www.haomeiwen.com/subject/qunddktx.html