vscode运行和调试怎么配置谷歌(vscode googletest)

vscode怎么调试c语言 调试步骤

1、打开你要写c++程序的文件夹,我们这里新建一个Test文件夹并打开test,打开后:使用VScode运行调试C/C++,在左侧打开的目录中新建一个 main.cpp 文件。

2、新建后点左侧的调试按钮(英文:Debug),可以看到,目前没有调试配置。

3、这时我们需要配置自己的调试配置,回到资源管理器界面,我们可以看到目录下多了一个.vscode的文件夹,里面有一个launch.json文件。我们现在在这个文件夹中新建一个tasks.json文件。我们需要改写这两个json文件的内容。

{

version: 0.2.0,

configurations: [

{

name: Run C/C++,

type: cppdbg,

request: launch,

program: ${workspaceFolder}/${fileBasenameNoExtension}.exe,

args: [],

stopAtEntry: false,

cwd: ${workspaceFolder},

environment: [],

externalConsole: true,

MIMode: gdb,

miDebuggerPath: C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/gdb.exe,

setupCommands: [

{

description: Enable pretty-printing for gdb,

text: -enable-pretty-printing,

ignoreFailures: false

}

],

preLaunchTask: build run file

},

{

name: Debug C/C++,

type: cppdbg,

request: launch,

program: ${workspaceFolder}/${fileBasenameNoExtension}.exe,

args: [],

stopAtEntry: false,

cwd: ${workspaceFolder},

environment: [],

externalConsole: true,

MIMode: gdb,

miDebuggerPath: C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/gdb.exe,

setupCommands: [

{

description: Enable pretty-printing for gdb,

text: -enable-pretty-printing,

ignoreFailures: false

}

],

preLaunchTask: build debug file

}

]

}

其中tasks.json文件内容(直接复制即可):

{

version: 2.0.0,

tasks: [

{

label: build debug file,

type: shell,

command: g++,

args: [

-g,

-o,

${fileBasenameNoExtension},

${file}

],

group: {

kind: build,

isDefault: true

}

},

{

label: build run file,

type: shell,

command: g++,

args: [

-o,

${fileBasenameNoExtension},

${file}

],

group: {

kind: build,

isDefault: true

}

}

]

}

4、我们已经完成了基本的配置工作,保存以上两个json文件后,再次点击左侧的调试按钮(Debug),可以发现出现了两个新的配置,一个是直接运行程序的Run,一个是用来调试程序的Debug。

5、我们写一个简单的c++程序来进行调试说明,程序源代码,我们在return 0这行添加了一个断点。

6、切换运行配置为Debug C/C++,点击运行按钮开始调试。

7、可以看到,弹出的终端输出了正确的结果,调试窗口中的变量中也有变量a和对应的值。

vscode怎么运行javascript?

1、直接按F5可以调试的方法或者点击运行按钮(可以直接运行html文件或者js文件)

在launch.json文件中的配置如下:

{

"version": "0.2.0",

"configurations": [{

"name": "谷歌浏览器", //运行html文件,用谷歌浏览器打开

"type": "chrome",

"request": "launch",

"url": "${file}",

"sourceMaps": true,

"webRoot": "${workspaceRoot}"

},

{

"name": "nodeLauch", //单独调试js,即可以直接运行js

"type": "node",

"request": "launch",

"program": "${file}", //这个配置成你要调试的文件、${file}当前打开的文件

"stopOnEntry": false,

"args": [],

"cwd": "${workspaceRoot}",

"runtimeExecutable": null,

"runtimeArgs": [

"--nolazy"

],

"env": {

"NODE_ENV": "development"

},

"console": "internalConsole",

"preLaunchTask": "",

"sourceMaps": false,

"outDir": null

}

]

}

2、第二种方法 Ctrl+Shift+B 快捷键运行html文件,在Tasks.json中配置如下:

{

"version": "0.1.0",

"command": "",

"isShellCommand": false,

"args": ["${file}"],

"showOutput": "always",

"windows": {

"command": "C:/Users/shannonliang/AppData/Local/Google/Chrome/Application/chrome.exe"

},

"tasks": [{

"taskName": "webserver",

"isBuildCommand": true,

"showOutput": "always"

}]

}

3、如果第二种方法,不想每次都按这个快捷键,请参考npm配置node服务方法:

VSCode Node.js 调试配置 (npm 脚本启动)

相当于直接使用 node 命令,用 npm run script 脚本 来启动 Node.js 程序是更为常见的场景,比如当目标是运行一个应用。

假设项目的 package.json 有一个用来调试的 debug 脚本:

我们要怎么启动项目的跟踪调试呢?

文档指路 ➡️ 【Node.js 调试入门】 、 【VSCode 中的 Node.js 调试】 、 【Launch 对 npm 及其他工具的配置支持】

VS Code 支持两种核心调试模式 Launch 和 Attach ,Launch 方式是直接以 debug 模式启动应用,并为我们自动添加一个调试器;而 Attach 方式则是将 VSCode 调试器连接到已经运行中的应用程序或进程。我们这里用的是 Launch 方式。

在终端运行:

或点击VSCode 的小甲虫图标:

上面蓝色位置圈错了,应该是第一个 Node.js。

VSCode 十分智能,预设了很多针对不同需求的启动配置:

让我们来做进一步的修改:

之前那个启动配置项可以删除,留下这个需要的即可。

我们将 console 属性 设置为外部终端,我们启动调试时 VScode 就会自动打开下图中对应的终端(根据操作系统)。可以根据个人使用习惯,自定义用什么终端 (比如我在 VSCode 设置的 Terminal › External: Osx Exec,从默认的改为了 iTerm2)。

别忘了先把我们的脚本加上端口

VSCode 调试

更全面的信息可以参考官方 调试手册 ,以下记录我用 VSCode 调试的一些经验。

想要在 VSCode 里调试,需要配置两个文件 tasks.json 和 launch.json 。

这两个文件按 F5 后会自动在 .vscode 目录下生成。

一般默认生成的 tasks.json 文件如下:

我们需要关注的选项有:

深入理解 tasks.json 文件的作用与 "command" 选项的用法,我们就能灵活地配置构建工程。

tasks.json 文件是用来构建工程的,当我们按 F5 进行调试时,VSCode 首先会执行 tasks.json 文件里 "command" 选项后的命令,并传入 "args" 参数,这样整个工程就被重新编译链接一遍了。

以 hello.c 文件和上述 tasks.json 为例,按 F5 进行调试时,最终会在命令行执行下述命令构建工程:

当然,如果一个工程有多个文件,"command" 就不能是简单的 gcc 了,需要根据实际的构建系统选择。

如果构建系统使用的是 Makefile ,那我们可以配置

这样在构建项目时就会使用命令

这跟我们平时使用 make 构建项目是一致的。

又比如配置 Zephyr 环境,

这样在构建项目时相当于执行命令

launch.json 文件用于配置调试环境。一般默认生成的文件如下:

我们需要关注的选项有:

VSCode 预定义了一些变量,可以在 Variables Reference 查看意思。

有时候我们的程序需要访问硬件资源,这一般需要 root 权限,而 VSCode 一般是在用户权限下启动的,这就需要特殊配置 VSCode 才能调试程序。

下面介绍如何利用 VSCode 以 root 权限调试程序。

首先需要注意到 launch.json 文件里的 "miDebuggerPath" 这个选项,它是调试器的路径,如果这个调试器可以以 root 权限运行,那么就达成了我们的目的了。

在 /home/user_name 目录下创建文件 gdb,user_name 需要替换为实际的用户名。

然后编辑该文件 vim gdb ,加入下述内容:

给 gdb 添加执行权限,

在修改 "miDebuggerPath" 成为

即可。这样我们就可以在 VSCode 里以 root 权限调试程序了,只不过每次都需要输入密码,因为有一个 sudo 过程。

为了解决这个麻烦,我又在网上找到了方法,将 /home/user_name/gdb 加入 sudo 的免密认证即可。

输入

编辑 /etc/sudoers 文件,修改成下述内容即可,

其中 jackis 是我的用户名,需要根据实际用户名替换。

NOPASSWD: 后的命令 sudo 时都不需要密码。退出 Shell,再重新打开一个命令行界面,输入 sudo apt update ,会发现没有提示输入密码了。

参考:

How to debug programs with “sudo” in VSCODE

How to Run sudo Commands Without Password

361知讯网

本文链接:http://pdidw.com/vs/44980.html

发表评论

评论列表

还没有评论,快来说点什么吧~