代码之家  ›  专栏  ›  技术社区  ›  user1610950

cmake和llvm配置

  •  0
  • user1610950  · 技术社区  · 7 年前

    我在我的Unix机器上安装了多个版本的llvm,我正在构建一个需要llvm50或更低版本的cmake项目,但是设置它找到llvm60的cmake llvm_配置路径。

    有没有办法推动CMake找到正确的LLVM版本?

    2 回复  |  直到 7 年前
        1
  •  1
  •   compor    7 年前

    您没有编写命令行如何访问这些版本(例如,clang 3.9是作为 clang-3.9 或者你必须出口它 bin 目录 $PATH 环境变量?)

    一旦所需的llvm/clang版本在我的 $路径 ,我通常做的是使用 llvm-config 对于我感兴趣的特定版本 cmake 可变值(尤其是 LLVM_DIR )例如

    cmake \
      -GNinja \
      -DCMAKE_C_COMPILER=clang \
      -DCMAKE_CXX_COMPILER=clang++ \
      -DLLVM_DIR="$(llvm-config --cmakedir)" \
      -DCMAKE_BUILD_TYPE=Debug \
    [...]
    

    如果 --cmakedir 选项在所需的llvm版本中不可用,请使用 $(llvm-config --prefix)/share/llvm/cmake/) 相反(或定义为cmake dir的任何地方)。

    另外,调整 CMAKE_C_COMPILER CMAKE_CXX_COMPILER 到前面提到的正确的可执行文件名。

        2
  •  1
  •   ConsistentProgrammer    7 年前

    您可以更新 $PATH Linux中的变量如下:

    export $PATH=<path_to_llvm_bin_folder>:$PATH

    如果总是使用特定版本的llvm,也可以将其放在.bashrc文件中。

    推荐文章