在Windows 10 中用 Bash on Windows(WSL) 给 VSCode 搭建 编译调试 C/C++ 环境 (本文已过时)

Windows 10 Creator Update 下的VSCode 支持 WSL *了!( 2019 本文已过时 )


2019年时, 根据微软发布的 WSL2 和 VSCode 最新版以及 VSCode 的 WSL 插件, 此方法不够最新的微软官方提供的插件来得直接简单( 但或许还有某些参考价值故保留 ).过阵子我会记录一篇 1903 版本 Windows 10 的可用教程
Degbug!

*本文参考链接(基础2):GitHub
*WSL是 Windows 10 下 的一项功能,全称Window Subsystem for Linux


你要提前准备的内容(粗体重要

  • Windows 10 带有 Creator Update(即创意者更新)
  • WSL(Windows Subsystem for Linux)(即 Bash on Windows)
  • VSCode 带有 C/C++ 工具扩展(ms-vscode.cpptools)
  • 阅读 一般的 VSCode 搭载 C/C++ 编程环境的教程(*nix或Win)(基础1)
  • 阅读 本文参考链接并复制+粘贴(+修改)好 launch.json 文件
    *步骤5依赖于步骤4

一. launch.json 的修改

原内容

"program":/mnt/z/Bash/kitchensink/a.out",

修改

"program": 【要生成可执行文件目录在bash中的目录】/${fileBasenameNoExtension}.out",

解释:${fileBasenameNoExtension} 是说明让VSCode获取当前文件不带扩展名的文件名,另外"sourceFileMap” 和 “cwd” 的目录内容也请 按实况修改


二. 写一个 gcc.bat

方法是在你的可执行文件目录里面新建一个新建文本文档.txt改为gcc.bat,右键编辑

bash -c "gcc -g 【源代码目录在bash中的目录】%1 -o 【要生成可执行文件目录在bash中的目录】%2"

解释:这是为了在VSCode里面通过cmd调用bash调用gcc,目前我只想到这个办法。%1指下面task.json给bat输入的参数(源代码和输出文件),其实可以不在bat中写目录,可以让task.json传参数,可以自行修改。


三.改task.json

关于task.json是什么,怎么创建,可以在你要提前准备的内容步骤4中看到。

//这是task.json的全部内容
{
"version": "0.1.0",
"tasks": [
	{
	"taskName": "gcc", 
	"command":"【gcc.bat在win下的位置,这里用/或\\】/gcc.bat",
	"args": [
		"${fileBasenameNoExtension}.c",
		"${fileBasenameNoExtension}.out"
		],
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceRoot}"],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
            }
          }
       }
	]
}

至此 VSCode 的连接 Bash 工作完成!##

可以调试了!

图片


问题

通过这个生成的可执行文件名是什么?
  • [ 源文件去掉.c然后加上.out(如hello.out)]
[要生成可执行文件目录在bash中的目录]是什么?
  • [看你想把xx.out放哪里,一般和源文件放一起就行了(如/mnt/z/Bash/kitchensink)注意c盘要写/mnt/c,而且要区分大小写!!!]
[源代码目录在bash中的目录】是什么?
  • [你的xx.c文件的所在之处,比如我有一个helloworld程序在c:\Hello文件夹里面,要写为/mnt/c/Hello]
[gcc.bat在win下的位置,这里用/或\】是什么?
  • [建议和可执行文件放一起或者另外找一个特定目录防止误删]
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值