让开发更高效:Windows 平台下 Clang 和 Clangd 的安装与配置
创始人
2024-12-27 15:37:46
0次

Windows 平台下 Clang 和 Clangd 的安装与配置

由于平时都在linux平台下进行开发,抽空想同步下Windows上的开发环境

Clang

Clang 的开发始于 2007 年,由 Chris Lattner (同时也是 Swift 语言的创始人)和他的团队在苹果公司启动。最初的动机是为了替代 GCC,解决 GCC 在编译速度、内存使用和错误信息方面的不足,苹果公司在 Xcode 4.2 中默认使用 Clang 作为编译器。

Clang与GCC一样同属于编译器套件,是一个编译器前端,它主要用于处理 C、C++、Objective-C 和 Objective-C++ 代码。它将源代码转换成中间表示(IR),然后由后端进一步处理成机器代码,

LLVM(Low Level Virtual Machine)是一个编译器基础架构项目,提供了一系列编译器和工具链技术,用于创建前端和后端编译器。LLVM 提供了 Clang 需要的后端支持,将中间表示(IR)转换成机器代码。

需要从LLVM官方网站下载并安装LLVM和Clang的预编译二进制文件包。可以通过访问LLVM下载页面获取安装包。

Clang在Windows上通常依赖于Microsoft的编译工具链,包括链接器和标准库(rust也同样依赖)。你可以安装完整的Visual Studio IDE,或者如果只需要编译工具,可以安装Visual Studio Build Tools。

Visual Studio Build Tools
选择 使用 C++ 的桌面开发 即可

也可以在 GitHub 直接下载LLVM,我下载的是LLVM 18.1.6,Assets中选择LLVM-18.1.6-win64.exe
在这里插入图片描述

之后无脑下一步就行,安装位置在C:\Program Files\LLVM,安装完毕后在Path中加入环境变量C:\Program Files\LLVM\bin即可

之后打开终端输入clang -v就可以看到了

clang -v clang version 18.1.6 Target: x86_64-pc-windows-msvc Thread model: posix InstalledDir: C:\Program Files\LLVM\bin 

注意Windows下编译文件需要将文件编译成.exe后缀才能运行

例如:

Windows下默认是.\,输入./也ok

# 编译 clang++ .\main.cc -o main.exe # 运行 ./main.exe 

Clangd

Clangd 是一个专门为 C、C++ 以及 Objective-C 开发的语言服务器,基于 Clang 编译器框架。它实现了 Language Server Protocol (LSP),提供代码补全、语法检查、代码导航和重构等功能。

在 VSCode 中,Clangd 提供了比官方 C/C++ 扩展更为出色的开发体验,特别是在性能和代码分析方面。通过合理配置和使用 Clangd,开发者可以显著提高开发效率和代码质量。

在 VSCode 中使用 Clangd

在 VSCode 中,可以通过安装 clangd 扩展来使用 Clangd 作为语言服务器。
clangd

与官方的 C/C++ 扩展相比,clangd 具有以下优势:

  1. 性能:Clangd 是专门为 Clang 编译器设计的,具有较高的性能和响应速度。
  2. 准确性:由于 Clangd 使用 Clang 编译器解析代码,语法检查和代码补全的准确性更高,特别是在处理复杂的 C++ 代码时表现更为出色。
  3. 更好的标准支持:Clangd 对现代 C++ 标准(如 C++11、C++14、C++17、C++20)的支持更为全面和准确。
  4. 语义着色:Clangd 提供更细粒度的语义着色,有助于开发者更容易地理解和维护代码。

例如下面这张图,clangd提供更加易懂的C++提示
clangd
至此,在Windows上完成了Clang和Clangd的安装与配置

相关内容

热门资讯

终于清楚辅助!七七娱乐辅助AI... 终于清楚辅助!七七娱乐辅助AI插件,七七娱乐多功能一直真的有辅助插件1、完成七七娱乐有辅助插件,帮助...
一秒答解外挂!天天卡五星外挂A... 一秒答解外挂!天天卡五星外挂AI攻略,天天卡五星多功能本来真的是有外挂攻略1、操作简单,无需天天卡五...
玩家必备教程辅助器!心悦辽宁麻... 玩家必备教程辅助器!心悦辽宁麻将辅助器AIapp,心悦辽宁麻将多功能一直存在有辅助器app所有人都在...
重大来袭辅助器!残局斗地主辅助... 重大来袭辅助器!残局斗地主辅助器AI插件,残局斗地主多功能确实是有辅助器插件1、起透看视 残局斗地主...
盘点十款辅助!小熊猫麻将辅助A... 盘点十款辅助!小熊猫麻将辅助AI脚本,小熊猫麻将多功能果然是真的有辅助脚本小熊猫麻将脚本下载中分为三...
必看攻略辅助!创乐缘辅助AI技... 必看攻略辅助!创乐缘辅助AI技巧,创乐缘多功能原来真的有辅助技巧1、起透看视 创乐缘辅助软件价格2、...
重大通报透视挂!熊猫互娱透视挂... 重大通报透视挂!熊猫互娱透视挂AI插件,熊猫互娱多功能竟然有透视挂插件1、让任何用户在无需熊猫互娱安...
程序员教你辅助器!联众娱乐辅助... 程序员教你辅助器!联众娱乐辅助器AI技巧,联众娱乐多功能一贯有辅助器技巧1、联众娱乐免费辅助多个强度...
科普分享作弊器!推筒子作弊器A... 科普分享作弊器!推筒子作弊器AI插件,推筒子多功能原来是有作弊器插件所有人都在同一条线上,像星星一样...
一分钟揭秘开挂!牛大亨开挂AI... 一分钟揭秘开挂!牛大亨开挂AI攻略,牛大亨多功能真是真的有开挂攻略1、牛大亨透视辅助软件激活码多个强...