Centos7 安装LLVM+Clang实录

本文记录了在Centos7上安装LLVM和Clang的详细步骤,包括源码下载、文件路径设定、编译安装过程,以及libcxx和libcxxabi的编译方法。

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

LLVM

目录及源码下载

mkdir -p ~/llvm
cd ~/llvm
//llvm源码
wget http://llvm.org/releases/3.5.0/llvm-3.5.0.src.tar.xz
tar xf llvm-3.5.0.src.tar.xz
rm llvm-3.5.0.src.tar.xz
//clang
wget http://llvm.org/releases/3.5.0/cfe-3.5.0.src.tar.xz
tar xf cfe-3.5.0.src.tar.xz
rm cfe-3.5.0.src.tar.xz
//clang-extra
wget http://llvm.org/releases/3.5.0/clang-tools-extra-3.5.0.src.tar.xz
tar xf clang-tools-extra-3.5.0.src.tar.xz
rm clang-tools-extra-3.5.0.src.tar.xz
//compiler-rt
wget http://llvm.org/releases/3.5.0/compiler-rt-3.5.0.src.tar.xz
tar xf compiler-rt-3.5.0.src.tar.xz
rm compiler-rt-3.5.0.src.tar.xz

文件路径

//clang
mv cfe-3.5.0.src clang
mv clang/ llvm-3.5.0.src/tools

//extra
mv clang-tools-extra-3.5.0.src extra
mv extra/ llvm-3.5.0.src/tools/clang/

//compiler-rt
mv compiler-rt-3.5.0.src compiler-rt
mv compiler-rt llvm-3.5.0.src/projects/

编译安装

### 如何在 WSL 上安装配置 CUDA #### 准备工作 为了确保能够在 WSL 中成功安装并配置 CUDA,在此之前需确认已经正确设置好了 Windows Subsystem for Linux (WSL),并且选择了合适的 Linux 发行版,比如 Ubuntu 24.04。另外,还需保证系统能够连接互联网以便于下载必要的软件包和驱动程序[^1]。 #### 安装 NVIDIA 驱动程序和支持组件 对于 Windows 11 用户来说,操作系统本身提供了对 WSL 下 GPU 加速的支持功能。这意味着只要更新到最新版本的操作系统补丁,并启用相应的特性开关即可获得基本支持环境[^3]。具体操作可以通过 PowerShell 执行 `wsl --update` 命令来完成系统的升级准备;接着利用设备管理器中的显示适配器选项检查是否有适用于当前硬件的新版图形卡驱动可供安装。 #### 启用 WSL 2 并切换默认发行版至 WSL 2 由于只有基于 WSL 2 的实例才完全兼容完整的 CUDA 功能集,因此建议将所使用的 Linux 发行版转换成 WSL 2 模式。这一步骤可通过命令行工具轻松实现: ```powershell wsl --set-version <DistributionName> 2 ``` 其中 `<DistributionName>` 应替换为实际使用的发行版名称,例如 "Ubuntu" 或者其他自定义命名的空间名。 #### 获取并安装 CUDA Toolkit 当上述准备工作完成后,就可以着手获取官方发布的 CUDA Toolkit 来源文件了。访问[NVIDIA 开发者网站](https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=WSL-Ubuntu&Version=latest)选择适合 WSL 环境下的版本进行下载。按照提示逐步完成整个过程直至结束。通常情况下会涉及到接受许可协议条款、指定安装路径等交互环节,请根据个人需求做出合理的选择[^2]。 #### 测试 CUDA 是否正常运作 最后一步就是验证新安装好的 CUDA 是否可以正常使用。进入终端界面后尝试编译运行一段简单的测试代码如下面所示: ```cpp // test_cuda.cu #include <stdio.h> int main() { int deviceCount; cudaError_t error = cudaGetDeviceCount(&deviceCount); if(error != cudaSuccess){ printf("CUDA Error: %s\n", cudaGetErrorString(error)); return 1; } printf("Found %d CUDA devices.\n", deviceCount); for(int i = 0; i < deviceCount; ++i){ cudaDeviceProp prop; cudaGetDeviceProperties(&prop, i); printf("Device Number: %d\n", i); printf(" Device name: %s\n", prop.name); printf(" Memory Clock Rate (KHz): %d\n", prop.memoryClockRate); printf(" Memory Bus Width (bits): %d\n", prop.memoryBusWidth); printf(" Peak Memory Bandwidth (GB/s): %.2f\n\n", 2.0*prop.memoryClockRate*(prop.memoryBusWidth/8)/1.0e6); } } ``` 保存以上内容作为一个 `.cu` 文件之后,使用 nvcc 编译它: ```bash nvcc -o test_cuda test_cuda.cu ./test_cuda ``` 如果一切顺利的话,则应该可以看到有关本地 GPU 设备的信息输出,证明 CUDA 成功部署完毕。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值