Linux中编译c语言的方法:
生成中间code,分两步编译 gcc -c test.c -o test.o //汇编成目标.o文件(中间文件二进制) gcc test.o -o test //将中间文件编译成可执行文件test直接生成可执行文件 gcc -g -o -wall test.c -o test //将test.c文件直接编译成可执行文件选中.c文件,通过ctrl+shift+p,选择c/c++:Build and Debug Active File, 选择gcc5 会自动生成,launch.json和tasks.json launch.json的preLauchTask指向task的label,在task中设置编译的方法。 例如: -o (生成文件)-l 链接库文件等等。 然后,选择.c文件,设置断点,F5或者运行菜单启动调试运行,就可以debug了。
在vscode中定义了一些变量,在配置任务脚本时,可能会用到。本文以tasks.json脚本为例,介绍各个变量的含义。
假设当前workspace的路径为:/home/TestSource,选中tasks.json, workspace文件夹下的结构如下(+表示下一层):
/home/TestSource +.vscode ++tasks.json ++launch.json +main.cpp
变量说明${workspaceFolder}表示当前workspace文件夹路径,也即/home/TestSource${workspaceRootFolderName}表示workspace的文件夹名,也即TestSource${file}文件自身的绝对路径,也即/home/TestSource/.vscode/tasks.json${relativeFile}文件在workspace中的路径,也即.vscode/tasks.json${fileBasenameNoExtension}当前文件的文件名,不带后缀,也即tasks${fileBasename}当前文件的文件名,tasks.json${fileDirname}文件所在的文件夹路径,也即/home/TestSource/.vscode${fileExtname}当前文件的后缀,也即.json${lineNumber}当前文件光标所在的行号${env:PATH}系统中的环境变量