前言
本文目的是让gcc编译出来的可执行二进制文件能够在vscode上调试
系统是ubuntu、语言是C
一、编写源文件
1、创建文件夹,在文件夹中写好源文件与头文件
2、gcc手动编译源文件
gcc -c *.c -g // -g是添加调试信息
gcc -o a.out *.o // 链接文件
写两行是提醒自己,调试信息在编译源文件的时候产生效果。
二、配置vscode
1、保存工作空间生成文件: workspace.code-workspace
2、修改生成的文件的内容,主要就是添加 “launch” 内容,修改之后如下所示:
{
"folders": [
{
"path": "."
}
],
"settings": {
},
"launch": {
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) C program",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/a.out,
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
}
上文中:
“program”:是需要调试的二进制文件名。
“args”:表示的是传入的参数, 写的第一个参数存在argv[1]。
三、调试
1、检查vscode左侧是存在小虫子。
2、打开main函数所在的文件,提前打好断点,按f5进入调试。
3、如果无法进入调试,检查“RUN AND DEBUG” 右侧的内容,是否选中工作空间。如下图: