环境安装

Microsoft Visual Studio

这里以Visual Studio 2022为例,在Visual Studio 2022 版本发行说明 | Microsoft Learn选择所要下载的版本。

设置好安装位置后,仅需勾选使用C++的桌面开发即可,然后点击安装即可。

MinGW-w64

通常情况下,如果已经安装了Microsoft Visual Studio,那么可能不需要额外安装MinGW-w64。然而,博主需要使用LLVM中的ClangdLLDB,以获取更强大的代码提示和调试功能。同时,通过XMake下载的一些包可能依赖于Microsoft Visual Studio,因此确保两者同时存在是为了满足项目的构建和依赖要求。

WinLibs官网的Release versions下载最新的UCRT runtime带POSIX + LLVM/Clang/LLD/LLDB的版本。

下载并解压完成后,请确保将mingw32/binmingw64/bin文件夹添加到系统的PATH环境变量中,并且路径中不包含任何空格。

在终端输入分别输入clangd --versionlldb --version出现下图内容,代表安装成功。

XMake

Releases下载最新版本的xmake-master.win64.exe。选择好安装路径后,其他按照默认要求进行安装。

安装完成后,在终端输入xmake -version出现下图内容代表安装成功。

环境配置

XMake 配置

更改全局配置文件根目录

默认情况下,XMake的全局配置的存储目录在C:\Users\user_name\.xmake。这里存储着全局配置文件,依赖包的安装、缓存等其他全局文件,默认都会存储在这个目录下。

通过在系统的PATH环境变量中添加XMAKE_GLOBALDIR可更改全局配置文件根目录,下图将XMAKE_GLOBALDIR设置为XMake的安装位置,则在安装位置下会创建.xmake文件夹,其中.xmake\cache为依赖包的下载缓存,.xmake\packages为依赖包的安装位置。

设置代理

使用xmake-repo下载包时可能会很慢,可以让XMake直接走代理。

$ xmake g --proxy="socks5://127.0.0.1:1086"
$ xmake g --help
-x PROXY, --proxy=PROXY Use proxy on given port. [PROTOCOL://]HOST[:PORT]
e.g.
- xmake g --proxy='http://host:port'
- xmake g --proxy='https://host:port'
- xmake g --proxy='socks5://host:port'

VSCode 配置

插件安装

插件配置

{
// xmake
"xmake.buildDirectory": "${workspaceRoot}/build",
"xmake.debugConfigType": "codelldb", // clangd
"clangd.checkUpdates": false,
"clangd.arguments": [
// 让 Clangd 生成更详细的日志
"--log=verbose",
// 输出的 JSON 文件更美观
"--pretty",
// 全局补全
"--all-scopes-completion",
// 建议风格:打包(重载函数只会给出一个建议)
// 相反可以设置为detailed
"--completion-style=bundled",
// 跨文件重命名变量
"--cross-file-rename",
// 允许补充头文件
"--header-insertion=iwyu",
// 输入建议中,已包含头文件的项与还未包含头文件的项会以圆点加以区分
"--header-insertion-decorators",
// 在后台自动分析文件(基于 complie_commands,我们用CMake生成)
"--background-index",
// 启用 Clang-Tidy 以提供「静态检查」
"--clang-tidy",
// Clang-Tidy 静态检查的参数,指出按照哪些规则进行静态检查
// 参数后部分的*表示通配符
// 在参数前加入-,如-modernize-use-trailing-return-type,将会禁用某一规则
"--clang-tidy-checks=cppcoreguidelines-*,performance-*,bugprone-*,portability-*,modernize-*,google-*",
// 默认格式化风格: 谷歌开源项目代码指南
// "--fallback-style=file",
// 同时开启的任务数量
"-j=2",
// pch优化的位置(memory 或 disk,选择memory会增加内存开销,但会提升性能) 推荐在板子上使用disk
"--pch-storage=disk",
// 启用这项时,补全函数时,将会给参数提供占位符,键入后按 Tab 可以切换到下一占位符,乃至函数末
// 我选择禁用
"--function-arg-placeholders=false",
// compelie_commands.json 文件的目录位置
"--compile-commands-dir=.vscode",
"--enable-config",
"--fallback-style=Google",
"--pch-storage=memory",
"--ranking-model=heuristics",
], "clangd.onConfigChanged": "ignore",
"[cpp]": {
"editor.defaultFormatter": "llvm-vs-code-extensions.vscode-clangd"
}, // lldb
"lldb.showDisassembly": "never",
"lldb.verboseLogging": true,
}

【Windows 开发环境配置——C++ 篇】VSCode+MSVC/MinGW/Clangd/LLDB+Xmake的更多相关文章

  1. (二)react-native开发系列之windows开发环境配置

    之前写了react-native在mac上得环境搭建,但是如果只开发android的话,只要用windows系统就可以了,下面就来说下react-native的windows开发环境配置. 1.下载配 ...

  2. 【转】cocos2d-x windows开发环境配置

    声明:本教程在参考了以下博文,并经过自己的摸索后实际操作得出,本教程系本人原创,由于升级后的cocos2d-x有了一些变化,目前的博文还没有关于Cocos2d-x 2.2.1最新版搭建Android交 ...

  3. Laravel for Windows 开发环境配置

    本文为CSDN Choris 原创,转载请事先征得作者同意,以示尊重! 原文:http://blog.csdn.net/choris/article/details/50215835 Laravel配 ...

  4. Tomcat+eclipse JSP windows开发环境配置

    一.安装Java SE http://www.oracle.com/technetwork/java/javase/downloads/index.html ,配置JAVA_HOME环境变量 二.安装 ...

  5. windows下spark开发环境配置

    http://www.cnblogs.com/davidwang456/p/5032766.html windows下spark开发环境配置 --本篇随笔由同事葛同学提供. windows下spark ...

  6. Golang(go语言)开发环境配置

    VSCode开发环境配置 目录 VSCode开发环境配置 先到VSCode官网去下载适合自己系统的VSCode安装软件 演示在WIndows下 安装使用 演示在Linux(Ubuntu/centos) ...

  7. (一)react-native开发系列之Mac开发环境配置

    写在前面 在开始之前,先说下选择react-native的背景原因 最近一年来,公司为了节省开发成本,以及降低维护成本,指派我开始做起前端开发app的工作,我和公司的小伙伴们就开始了漫长的app开发之 ...

  8. AndroidStudio开发环境配置-Windows

    Android Studio开发环境配置-Windows 最近突发奇想,开始研究Android开发.开始时使用Eclipse作为开发IDE,结果各种不好使,首先下载和安装SDK,以及不同版本的Imag ...

  9. VSCode Java 开发环境配置 详细教程

    VSCode Java 开发环境配置 详细教程 配置java 下载 用于现在大多数使用者用的是java 8,小白的我先安装java 8好了,^ w ^. 下载地址:Java 8 | Java SE 打 ...

  10. VSCode PHP 开发环境配置 详细教程

    VSCode PHP 开发环境配置 详细教程 这篇文章主要介绍了VScode+PHPstudy配置PHP开发环境的步骤,整理了官方以及优秀第三方的内容,对于学习和工作有一定借鉴意义. 配置过程 第一步 ...

随机推荐

  1. 云原生爱好者周刊:开源替代品开始围剿 Docker Desktop

    云原生一周动态要闻: Docker 更新和扩展了产品订阅 NGINX Ingress Controller 1.0.0 发布 Tanzu 应用平台的公开测试版发布 IBM 开源 Tornjak Kub ...

  2. javascript 中==和===的区别【转载】

     javascript 中==和===的区别[转]     对于JavaScript中比较运算符,可能大家用的比较多的是"==".对于"==="很多人可能很陌生 ...

  3. C#常见的四种经典查找算法

    前言 在编程领域,数据结构与算法是构建高效.可靠和可扩展软件系统的基石.它们对于提升程序性能.优化资源利用以及解决复杂问题具有至关重要的作用.今天大姚给大家分享四种C#中常见的经典查找算法. C#数据 ...

  4. 顺序结构程序设计(python)

    文章目录 1.python运算符 1.1 python算数运算 1.2python比较运算符 1.3 Python赋值运算符 1.4 python逻辑运算符 1.5 python成员运算符 1.6py ...

  5. C++ 迪利克雷(Dirichlet)分布

    遇到一个要使用 dirichlet 分布的情形,发现 C++ 标准库中没有现成的.查阅维基百科发现,虽然它挺复杂,但是它跟 Gamma 分布有如下关系: 设有 K 个相互独立且分别满足 Gamma 分 ...

  6. .NET周刊【11月第3期 2024-11-17】

    国内文章 .NET 9使用Scalar替代Swagger https://www.cnblogs.com/netry/p/18543378/scalar-an-alternative-to-swagg ...

  7. Hibernate二级缓存 ---- 最佳实践

    2010年11月7号,立冬,星期天.北京外面风好大,躲在家里整理一下这篇文章,发出来与大家分享,对大家有帮助是我最高兴的事儿. 不要想当然的认为使用了Hibernate的二级缓存就一定能够提高应用程序 ...

  8. 成为JavaGC专家Part I — 深入浅出Java垃圾回收机制

    对于Java开发人员来说,了解垃圾回收机制(GC)有哪些好处呢?首先可以满足作为一名软件工程师的求知欲,其次,深入了解GC如何工作可以帮你写出更好的Java应用. 这仅仅代表我个人的意见,但我坚信一个 ...

  9. Golang框架之gin

    gin是目前golang的主要web框架之一,之所以选择这个框架是因为其拥有高效的路由性能,并且有人长期维护,目前github上的star数已经破3W. [安装] go get -u github.c ...

  10. 通过双 key 来解决缓存并发问题

    我们在使用缓存的时候,不管Redis或者是Memcached,基本上都会遇到以下3个问题:缓存穿透.缓存并发.缓存集中失效.这篇文章主要针对[缓存并发]问题展开讨论,并给出具体的解决方案. 1.什么是 ...