Windows 编译 LLVM 详细教程

https://www.jianshu.com/p/cfe6c4b11d75

https://www.sunofbeach.net/a/1290427013433171968

https://bbs.pediy.com/thread-258370.htm

安装准备:

(a) 安装 visual studio 2017 community 版本

注:一开始使用 VS 2019 community 版本,结果编译的时候出现找不到 “atlbase.h" 文件问题;改为 VS 2017 没有此问题。

安装 VS 时选择桌面 C++,  VC for ATL 要勾上;

(b) 安装 python3 版本

(c) 安装 cmake 版本;

(d) 下载 ninjia 程序,放到 cmake.exe 所在目录;

(e) 安装 perl https://strawberryperl.com

 (f) 安装 getgnuwin32-0.6.3 https://sourceforge.net/projects/getgnuwin32/files/latest/download, 下载解压后,执行目录中的 download.bat 下载文件;

 

源码准备:

(1) 下载 llvm 源码,从 https://releases.llvm.org 网站上下载源码压缩包;压缩包来自于github,国内访问奇慢;

可以选择从清华的llvm mirror下载:https://mirrors.tuna.tsinghua.edu.cn/help/llvm-project.git/, 整个代码仓库大概1.3GB 左右,国内访问还是比github 快很多。

git clone https://mirrors.tuna.tsinghua.edu.cn/git/llvm-project.git

(2) 切换源码到指定版本,比如10.0

cd llvm-project
git checkout origin/release/10.x

(3) 编译代码

首先创建个build目录,然后在build目录内执行 vcvarsall.bat 文件,注意末尾的 x64。然后使用 cmake 创建编译文件。

mkdir build
cd build
E:\llvm\llvm-project\build>"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat"  x64
cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi;clang-tools-extra;libunwind;compiler-rt" -DLLVM_ENABLE_ASSERTIONS=ON  ..\llvm
ninja

cmake 会输出很多warning信息,不影响编译,结束后执行 ninja 就开始编译了。

修复常量中有换行符错误:这是因为 VC 识别UTF8 代码有问题。

将文件编码改为utf-8-BOM, 使用 Notepad++ 打开文件,选择“编码”->"转换为UTF8-8 BOM 编码“。

E:\llvm\llvm-project\clang-tools-extra\clangd\Diagnostics.cpp(491): error C2001: 常量中有换行符
E:\llvm\llvm-project\clang-tools-extra\clangd\Hover.cpp(578): error C2001: 常量中有换行符
E:\llvm\llvm-project\clang-tools-extra\clangd\CodeComplete.h(81): error C2001: 常量中有换行符

目前就发现这三个文件需要转下编码,然后编译很长时间后,就编译成功了。bin目录下有输出的内容,如下:

 E:\llvm\llvm-project\build\bin 的目录

2021/05/14  14:01    <DIR>          .
2021/05/14  14:01    <DIR>          ..
2021/05/13  13:08        21,593,600 arcmt-test.exe
2021/05/13  13:08               381 arcmt-test.exe.manifest
2021/05/14  13:52        62,813,696 bugpoint.exe
2021/05/14  13:52               381 bugpoint.exe.manifest
2021/05/14  13:56            1
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是在Windows 10上安装LLVM教程: 1. 首先,下载LLVM源码。你可以在LLVM的GitHub页面上找到最新的版本。点击链接https://github.com/llvm/llvm-project/releases,下载llvm-project-llvmorg-13.0.1.zip压缩文件。 2. 将压缩文件解压到你想要安装的目录,例如D:\work\llvm\llvm-project-llvmorg-13.0.1。 3. 创建两个目录:D:\work\llvm\build和D:\work\llvm\install。这些目录将用于构建和安装LLVM。 4. 下载并安装CMake。你可以在CMake的官方网站https://cmake.org/上找到安装程序。安装完成后,运行cmake-gui.exe。 5. 在CMake界面上,点击"Browse Source"按钮,选择LLVM源码路径:D:/work/llvm/llvm-project-llvmorg-13.0.1/llvm。 6. 点击"Browse Build"按钮,指定build路径:D:/work/llvm/build。 7. 点击"Add Entry"按钮,分别添加以下两个条目: - Name: CMAKE_INSTALL_PREFIX Type: PATH Value: D:\work\llvm\install - Name: LLVM_TARGETS_TO_BUILD Type: STRING Value: X86 8. 点击"Configure"按钮,在弹出的对话框中选择你的Visual Studio版本(例如vs2022)和目标平台(例如x64)。等待几分钟,直到配置完成。 9. 点击"Generate"按钮,生成LLVM的Visual Studio工程文件。这将在D:\work\llvm\build目录中生成一个名为LLVM.sln的工程文件。 10. 双击打开LLVM.sln文件,使用Visual Studio打开工程。 11. 在Visual Studio中,选择Release编译模式,并右键单击CMakePredefinedTargets/All_BUILD,选择"生成"。等待很长时间,直到构建成功。 12. 构建成功后,你将在D:\work\llvm\build\Release目录下找到许多LLVM工具和库。 13. 为了方便使用LLVM工具,将D:\work\llvm\build\Release\bin目录添加到系统环境变量PATH中。 希望这个安装教程对你有帮助!如果有任何进一步的问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值