vscode + wsl2 + xmake快速构建c语言编译调试环境

前言

使用这一套是我觉得最方便的,wsl2使得我可以不用脱离windows,且无需安装庞大且臃肿虚拟机。vscode让我可以更加方便快捷的编辑代码,而xmake是一站式的工程构建工具且作者就是中国人文档啥的群啥的都是中文,比起cmake makefile学习成本低不少。

安装软件

vsocde安装

vscode官网,下载最新版的安装包。安装过程只有一点要注意:

这部分, 前两个是可以让你右键有通过Code打开功能。非常方便的打开文件夹。

第三个主要是让你可以让一些文件打开默认为vscode打开

第四个主要是可以通过命令行的code打开,在未来的wsl使用中非常方便。

wsl2安装

win + S 输入启用

点击启用或关闭windows功能,打开"适用于Linux的Windows子系统"和"虚拟机平台功能"(wsl2需要子系统功能)

非c盘安装方法

接下来可以通过 https://docs.microsoft.com/zh-cn/windows/wsl/install-manual 去下载对应的wsl的linux发行版(如ubuntu)。然后更改后缀为zip,用bandzip等解压软件进行解压到指定平台,解压文件夹里面有个.exe执行的文件(如ubuntu.exe)双击即可运行。

快捷安装方法

也可以通过微软商店搜索wsl后点击免费下载(这种做法默认保存到c盘)

这里就可以根据提示设置账户和密码了(这里密码无回显)

XMAKE安装方法

官方安装教程

这里做个简单的搬运

bash 复制代码
sudo add-apt-repository ppa:xmake-io/xmake
sudo apt update
sudo apt install xmake

如果出现报错

bash 复制代码
E: Release file for http://archive.ubuntu.com/ubuntu/dists/focal-updates/InRelease is not valid yet (invalid for another 4h 5min 19s). Updates for this repository will not be applied.

是由于wsl系统时间设置不正确,使用如下命令同步windows时间

bash 复制代码
sudo hwclock -s

作者在蓝桥云课上开设了一套官方课程:Xmake 带你轻松构建 C&C++ 项目

这里是作者csdn博客

安装vscode插件

首先打开voscode 在插件搜索里搜索chinese,让整个界面变成中文。

输入wsl,下载wsl插件

接下来进入wsl,输入

bash 复制代码
code .

在wsl中打开vscode

然后,输入c,在wsl中安装c/c++插件

最后输入xmake,下载xmake插件

下载编译工具链

bash 复制代码
sudo apt install gcc # 编译c文件
sudo apt install g++ # 编译c++文件
sudo apt install gdb # 调试代码

如何使用它编程和调试

我们打开wsl,使用xmake创建一个简单的工程

bash 复制代码
xmake create -l c hello

create命令用来创建工程,-l c指定语言为c语言

hello 是工程名

详情参考官方文档:工程例子

然后,进入hello 工程

bash 复制代码
cd hello

原地打开vscode

bash 复制代码
code .

首先我们来编译运行一下,打开vscode终端,输入

bash 复制代码
xmake f -m debug
xmake
xmake r

我们发现生成的xmake非常简单就三行代码,第一行是添加两种模式分别是用于调试的debug模式和用于发布的release模式。默认是release模式,可以通过xmake f -m debug切换到debug模式,后续配合vscode调试。

target是指定你的工程名,set_kind作用是指定生成的代码是二进制还是库,最后的add_file就是添加src下面所有.c结尾的文件。

接下来我们点击小虫子,跳转到调试界面。点击运行和调试

就可以愉快的调试了

相关推荐
筱璦18 小时前
期货软件开发 - C# 调用 HQChart 指标计算 C++ 动态库
c++·microsoft·c#
不想写代码的星星18 小时前
C++ 内存管理:分区、自定义分配器、常见问题与检测工具
c++
-许平安-19 小时前
MCP项目笔记九(插件 bacio-quote)
c++·笔记·ai·plugin·mcp
沉鱼.4419 小时前
第十三届题目
c语言·c++·算法
liulilittle19 小时前
C++ 无锁编程:单停多发送场景高性能方案
服务器·开发语言·c++·高性能·无锁·原子
无限进步_19 小时前
【C++】巧用静态变量与构造函数:一种非常规的求和实现
开发语言·c++·git·算法·leetcode·github·visual studio
程序员鱼皮19 小时前
AI 时代,满分的程序员简历是怎么样的?附简历模板
ai·程序员·编程·求职·简历
小超超爱学习993720 小时前
大数乘法,超级简单模板
开发语言·c++·算法
xyx-3v21 小时前
qt创建新工程
开发语言·c++·qt
样例过了就是过了21 小时前
LeetCode热题100 爬楼梯
c++·算法·leetcode·动态规划