请问在麒麟linux中安装polarpg,执行polardb_build.sh,会报错:llvm-c[阿里云PolarDB]

请问在麒麟linux中安装polarpg,执行polardb_build.sh,会报错:llvm-config not found,这个要怎么解决呢

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
4 条回复 A 作者 M 管理员
  1. 在麒麟Linux中安装polardb时,执行polardb_build.sh可能会出现“llvm-c”错误。这是因为polardb需要使用LLVM编译器来构建代码,但是麒麟Linux默认的Clang编译器版本可能不兼容LLVM所需的版本。

    解决方法:

    安装Clang编译器 可以通过以下命令安装Clang编译器:

    sudo apt-get install clang

    更新polardb_build.sh脚本中的Clang版本 打开polardb_build.sh脚本,找到以下代码行:

    export CC=/usr/bin/clang export CXX=/usr/bin/clang++

    将其中的“/usr/bin/clang”和“/usr/bin/clang++”替换为Clang编译器的路径,例如:

    export CC=/usr/local/opt/llvm/bin/clang export CXX=/usr/local/opt/llvm/bin/clang++

    重新运行polardb_build.sh脚本 修改完polardb_build.sh脚本后,重新运行该脚本即可。

  2. 在安装 polarpg 时出现 llvm-config not found 错误,是因为 polarpg 依赖于 LLVM 工具链,需要先安装 LLVM。

    您可以通过下面的命令来安装 LLVM:

    yum install llvm5.0 安装完成后,您可以确认 LLVM 是否已经正确安装,并找到 llvm-config 的路径:

    which llvm-config 如果成功安装,应该能够找到 llvm-config 的路径。接着,您可以切换到 polarpg 的源码目录,重新执行 polarpg_build.sh 脚本,应该就不会再出现 llvm-config not found 的错误了。

  3. 这个报错提示是因为执行polar_build.sh脚本时,依赖的LLVM和Clang的路径没有在系统的环境变量中配置,需要手动将路径配置到环境变量中。

    以下是具体的解决方法:

    1. 首先确认LLVM和Clang已经正确安装。可以在终端执行以下命令查看版本号:

      llvm-config --versionclang --version

      如果显示版本号,则说明已经安装成功;否则可以参考麒麟linux的安装文档重新安装。

    2. 执行以下命令将LLVM和Clang的路径配置到系统的环境变量中:

      export PATH=/usr/lib/llvm-3.6/bin:$PATHexport LD_LIBRARY_PATH=/usr/lib/llvm-3.6/lib:$LD_LIBRARY_PATH

      注意,这里的路径根据你系统上安装的LLVM和Clang的版本而定,需要替换成相应的路径。

    3. 然后再次执行polardb_build.sh脚本即可。如果还有其他报错,可以根据错误提示进行调整。

  4. 这个报错是提示在安装polardb之前需要先安装llvm-config,建议安装llvm-config之后再尝试执行polardb_build.sh

  5. 要先运行依赖安装的脚本。

    此答案来自钉钉群“PG|POLARDB技术进阶”