安装LLVM+Clang教程

本文详细介绍了LLVM及Clang的安装流程,包括所需工具的准备、源代码的下载与配置,以及环境变量的设置。LLVM是现代编译机制的核心,支持多种语言的静态与动态编译,而Clang作为C/C++的前端,将其转换为LLVM中间代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

一、LLVM简介

二、LLVM+Clang的安装


前言

最近可能要学习编译器相关的知识,因此总结一下LLVM的安装方法,以防忘记如何安装。

接下来就是正式的安装过程了。。。

------------------------------------------------------------分割线---------------------------------------------------------------------------------------------------

一、LLVM简介

LLVM是Low Level Virtual Machine 的缩写,它源自于伊利诺伊大学的一个开源研究项目,旨在提供一种现代化的编译机制,使得对于任何的语言既可以做到静态编译也可以动态编译,并且非常高效。后来LLVM孵化了很多的子项目,例如:Clang,LLDB,OpenMP等。

静态编译:编译器在编译可执行文件时,把需要用到的对应动态链接库(.so或.ilb)中的部分提取出来,链接到可执行文件中                    去,使可执行文件在运行时不需要依赖于动态链接库

动态编译:动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其                     优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很                     简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;二是如果其他计算机上没                     有安装对应的运行库,则用动态编译的可执行文件就不能运行。

LLVM由三部分组成:

第一部分是LLVM套件,它包含有LLVM所需的所有工具、库函数、和头文件,汇编器、反汇编器、bitcode(一种中间代码)分析器和优化器,以用来测试LLVM和Clang前端的基本回归测试。

第二部分是Clang前端,它将C/C++,Object C和Object C++代码编译成LLVM的中间代码(bitcode),一旦编译成LLVM bitcode,就可以使用LLVM的套件中的LLVM工具来进行操作了。

第三部分是测试集合,这是一个可选部分。它是一套能用来进一步测试LLVM功能和性能的程序。

二、LLVM+Clang的安装

准备工作

LLVM官方是用svn进行版本控制的,因此我们需要安装svn来获取源码。

安装过程中会用到cmake工具来生成Makefile,需要先安装cmake。

sudo apt-get install subversion
sudo apt-get install cmake

构建安装目录

#创建一个目录用来存放llvm源码
mkdir /tmp/llvm_source_build

下载LLVM核心源代码

#下载llvm代码
cd /tmp/llvm_source_build
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm

此时在/tmp/llvm_source_build目录下就会有一个llvm目录。

下载Clang源码

在/tmp/llvm_source_bulid/llvm/tools目录下下载clang。

#下载Clang源码
cd llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang

下载 Clang 工具源码(可选)

cd llvm/tools/clang/tools
svn co http://llvm.org/svn/llvm-project/clang-tools-extra/trunk extra

下载Compiler-RT 源码(可选)

cd llvm/projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt

还有一系列的可选项可以下载安装,这些并不主要,若需要可以查看参考文献2。

配置和安装LLVM+Clang

首先返回到/tmp/llvm_source_build目录下,新建一个build目录。

#新建build目录
cd /tmp/llvm_source_build
mkdir build

使用之前安装的cmake得到Makefile文件

cd build
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="X86" -DCMAKE_INSTALL_PREFIX=/opt/llvm ../llvm

上面的-CMAKE_INSTALL_PREDIX=/opt/llvm 表示要安装的目录。

得到Makefiile文件之后几可以进行编译和安装了

make -j 8
sudo make install

最后还需要配置一下环境变量。

#配置一下环境变量
vim /etc/profile
#在末尾添加
export PATH=$PATH:/opt/llvm/bin

参考文献:

1.https://www.xuebuyuan.com/3122442.html

2.http://llvm.org/docs/GettingStarted.html

3.https://www.jianshu.com/p/861c1a630059

<think>嗯,用户之前问过怎么安装jq,现在又问了安装clang。看起来他们可能是在配置开发环境,需要一些编译器或者工具。首先,我得确认clang在不同操作系统下的安装方法。用户可能使用Linux、macOS或者Windows,所以需要覆盖这三个平台。 用户之前得到的回答结构很清晰,分系统介绍,所以这次也应该保持类似的格式。先考虑Linux的不同发行版,比如Debian/Ubuntu用apt,Red Hat系用yum或dnf,Arch用pacman。然后macOS通常用Homebrew或者Xcode的命令行工具,而Windows可能需要Visual Studio或者预编译的二进制,还有可能用MSYS2或者WSL。 另外,用户可能需要验证安装是否成功,所以加上验证步骤,比如clang --version。还要注意是否需要安装相关的库和头文件,比如libc++或者compiler-rt,这可能对用户后续开发有帮助。 可能用户是开发者,刚开始配置环境,所以需要明确的步骤,避免遗漏。同时,常见问题比如命令找不到,可能需要检查路径或者重新安装,这些也应该包括进去。另外,升级clang的方法也可能有用,特别是对于使用包管理器的系统。 还要注意clangLLVM的关系,有时候安装clang可能需要安装整个LLVM套件,尤其是在Linux下,可能需要安装clangllvm包。在Windows上,如果用户使用WSL,可能需要参考Linux的安装方法,这需要明确说明。 最后,保持回答结构清晰,分步骤,代码块用正确的格式,符合之前用户提供的系统级指令。确保所有命令正确,并且用中文回答,符合用户要求。</think>以下是 **Clang 编译器**在不同操作系统中的安装方法,步骤简洁明确: --- ### **1. Linux 系统安装** #### Debian/Ubuntu 系(apt) ```bash sudo apt update sudo apt install clang # 安装基础 Clang 编译器 sudo apt install lldb # 可选:安装调试器 LLDB sudo apt install libc++-dev # 可选:安装 C++ 标准库支持 ``` #### Red Hat/CentOS 系(yum/dnf) ```bash sudo yum install clang # CentOS 7 sudo dnf install clang # CentOS 8+/Fedora ``` #### Arch/Manjaro 系(pacman) ```bash sudo pacman -S clang # 安装 Clang 和基础工具链 ``` --- ### **2. macOS 安装** #### 通过 Xcode 命令行工具(推荐) ```bash xcode-select --install # 安装 Xcode 开发工具(包含 Clang) ``` #### 通过 Homebrew ```bash brew install llvm # 安装完整 LLVM 套件(包含 Clang) brew link --overwrite llvm # 若需覆盖系统默认 Clang ``` --- ### **3. Windows 安装** #### 方法一:通过 Visual Studio(完整开发环境) 1. 安装 [Visual Studio](https://visualstudio.microsoft.com/) 2. 在安装界面勾选 **使用 C++ 的桌面开发** 3. 选择包含 **Clang 编译器** 的组件(如“MSVC v143 - VS 2022 C++ x64/x86 生成工具”) #### 方法二:独立安装(预编译二进制) 1. 下载 [LLVM 官方 Windows 版](https://releases.llvm.org/download.html) 2. 运行安装程序,勾选 **Add LLVM to the system PATH** 3. 验证安装:打开命令提示符运行 `clang --version` #### 方法三:通过 MSYS2(类 Linux 环境) ```bash pacman -S mingw-w64-x86_64-clang # 安装 MinGW 版 Clang ``` --- ### **验证安装** 终端中运行以下命令检查版本: ```bash clang --version ``` 输出示例: $$clang version 17.0.1 (https://github.com/llvm/llvm-project.git...)$$ --- ### **常见问题解决** - **`clang: command not found`**: - 检查安装路径是否在系统 `PATH` 中(Windows 需重启生效)。 - Linux/macOS 尝试重新加载配置:`source ~/.bashrc` 或 `source ~/.zshrc`。 - **兼容性问题**: - 若需使用最新版,建议通过 [LLVM 官方脚本](https://apt.llvm.org/)(Linux)或源码编译。 --- ### **升级 Clang** | 系统 | 命令 | |-----------|-------------------------------| | **Linux** | `sudo apt upgrade clang` | | **macOS** | `brew upgrade llvm` | | **Windows** | 重新下载安装包覆盖旧版本 | --- ### **附加工具推荐** - **CMake**:跨平台构建工具 - **Ninja**:高效编译后端 - **Clangd**:代码分析工具(LSP 支持) 按系统选择对应方法,10 分钟内即可完成配置!
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值