问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

LLVM配置终极指南:Visual Studio版

创作时间:
作者:
@小白创作中心

LLVM配置终极指南:Visual Studio版

引用
CSDN
12
来源
1.
https://blog.csdn.net/qq_43727392/article/details/138185725
2.
https://blog.csdn.net/2401_84969722/article/details/138788861
3.
https://blog.csdn.net/weixin_44035724/article/details/143180861
4.
https://cloud.baidu.com/article/3005162
5.
https://blog.csdn.net/qq_43727392/article/details/137143421
6.
https://blog.csdn.net/qq_37037348/article/details/139423532
7.
https://www.cnblogs.com/Jeffxu/p/18347778
8.
https://www.cnblogs.com/ZOMI/articles/18558900
9.
https://www.cnblogs.com/huaweiyun/p/18243298
10.
https://learn.microsoft.com/zh-cn/cpp/build/clang-support-msbuild?view=msvc-170
11.
https://blog.xiyoulinux.com/blog/104106536
12.
https://www.cnblogs.com/huaweiyun/p/18228112

LLVM(Low Level Virtual Machine)是一个开源的编译器基础设施项目,它提供了一套模块化和可重用的编译器工具。在Windows环境下,许多开发者选择使用Visual Studio作为开发工具,因此在Visual Studio中配置LLVM成为了一个常见的需求。本文将为你详细介绍如何在Visual Studio中配置LLVM,以及其在实际开发中的应用场景。

01

一、环境准备

在开始配置之前,你需要确保已经安装了以下软件:

1. Visual Studio 2019

首先,在Visual Studio安装程序的“工作负载”选项卡中,选择“使用C++进行桌面开发”工作负载。并更改安装位置到其他盘,不推荐直接安装在系统盘中。

点击位置中的‘更改’,配置为你新建的文件夹。点击’单个组件’选项卡,勾选“Git for Windows”,点击安装。已经有Git的可以不用勾选。等待它安装完毕。

2. Python3

LLVM的配置需要Python环境。你可以通过以下方式检查是否已安装Python:

  1. 打开命令提示符面板:按Win+R,输入cmd,打开命令行。
  2. 输入以下代码查看Python的安装路径:
import sys
sys.path

如果没有安装Python,你可以进入Python官网下载最新版本。在安装选项中,勾选Add python.exe to PATH,这将允许为所有用户安装psutil进行回归测试,并使Python可从命令行使用。然后点击Customize installation等待安装完毕。

02

二、配置步骤

方案一:使用Visual Studio Installer自动配置

该方案操作简单,无需太多配置。启动Visual Studio Installer,在单个组件处同时选择C++ Clang 对应的生成工具和适用于Windows的C++ Clang 编译器。

创建或打开C++项目,在属性中进行设置平台工具集LLVM(Clang-cl)

在该设置属性下即可自动调用LLVM-Clang编译器进行构建C++项目。该方式默认使用的是 Clang v12的版本,无法进行自定义设置自己需要的 Clang 版本。

方案二:手动配置自定义版本的LLVM-Clang

如果你需要使用特定版本的LLVM-Clang,可以按照以下步骤进行配置:

  1. 安装LLVM-Clang编译器:从LLVM官网下载你需要的LLVM-Clang版本。

  2. 确保VS已经安装了适用于当前VS版本的C++ Clang-cl生成工具

  3. 设置平台工具集:打开或创建C++项目,选择平台工具集LLVM(clang-cl)

此时进行编译会报错Cannot find LLVM toolset version '12.0.0',因为默认的Clang版本为v12.0.0。你需要告诉VS自定义Clang的根目录位置和版本号。

  1. 设置自定义LLVM的位置和版本号:创建Directory.build.props文件,然后将该文件添加到根解决方案目录中(即.sln所在目录)。该文件中的内容主要为:
<Project>
  <PropertyGroup>
    <LLVMInstallDir>D:\Programs\clang+llvm-18.1.8-x86_64-pc-windows-msvc</LLVMInstallDir>
    <LLVMToolsVersion>18</LLVMToolsVersion>
  </PropertyGroup>
</Project>

请根据你的实际安装路径和版本号进行修改。此时进行编译将会直接调用指定位置,指定版本的LLVM-Clang进行编译构建当前的C++项目。

03

三、应用场景

LLVM在多个领域都有广泛的应用,特别是在性能优化方面。例如,在数据库领域,GaussDB使用LLVM技术提升了系统的查询性能。LLVM的CodeGen技术能为每个查询生成定制的机器码,减少实际查询时冗余的条件逻辑判断、虚函数调用并提高数据局域性,从而达到提升查询整体性能的目的。

04

四、常见问题与解决方案

  1. 找不到LLVM头文件:确保环境变量已正确配置,或者在编译命令中添加-I/path/to/llvm/include参数。

  2. 编译错误:检查你的LLVM版本是否与项目兼容,或者尝试使用Visual Studio Installer自动配置。

  3. 性能问题:对于简单的查询,实时编译可能会导致性能下降。在OLTP场景中,建议在Prepared query(plan cached)的情况下使用LLVM。

通过以上步骤,你应该能够在Visual Studio环境中成功配置LLVM。无论是进行编译器开发、性能优化还是其他相关工作,LLVM都能为你提供强大的支持。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号