tasks.json
tasks.json

tasks.json

在进入main.cpp文件后,通过ctrl+shift+p 调出命令行窗口,点击配置任务,没有的自行搜索Task

再选择使用g++ build active file

生成的模版如下

注意:“label”那一行,要和前面的launch.json中的”preLaunchTask”: “g++”这里写的一样,因为前面launch.json中的”preLaunchTask”里我改为了g++,所以这里我也改为g++,vscode默认的是g++.exe build active file

launch.json(”preLaunchTask”: “g++.exe build active file”)和tasks.json(”label”: “g++.exe build active file”),都是默认的这个,当然无论是什么,只要保持一致就行 】

修改后

{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "shell",	/* 定义任务是被作为进程运行还是在 shell 中作为命令运行,默认是shell,即是在终端中运行,因为终端执行的就是shell的脚本 */
			"label": "build",	/* 要与launch.json文件里的preLaunchTask的内容保持一致 */
			"command": "/usr/bin/g++",	/* 这里填写你的编译器地址 */
			"args": [
				/* 类似与qt的Pro文件里开始的那几句 */
				"-std=c++11",// 静态链接
                "-static-libgcc",
				"-Wall",// 开启额外警告
				
				/* 说明整个项目所需的头文件路径(.h)*/
				"-I","${workspaceFolder}/",
                "-I","/usr/local/include/",
                "-I","/usr/local/include/opencv4/",
                "-I","/usr/local/include/opencv4/opencv2/",
				
				/* 说明整个项目所需的源文件路径(.cpp) */
				"-g",	
                "${workspaceFolder}/main.cpp",/* ${workspaceFolder}表示路径从当前项目文件夹开始 */

				"-o",	/* 编译输出文件的存放路径 */
				"${fileBasenameNoExtension}.o", /* 要与launch.json文件里的program的内容保持一致 */
				/* ${fileDirname} 是指 文件目录名 相当于${workspaceFolder}*/
				/* ${fileBasenameNoExtension}意思是指 该路径下没有扩展名的文件基本名称没有扩展名 */ 
				/* 也可以这样:"${workspaceFolder}/run.o", */

				/* OpenCV的lib库 */
				"/usr/local/lib/libopencv_*",
			],
			"options": {
				"cwd": "${workspaceFolder}"	/* 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录 */
			},
			"problemMatcher": [
				"$gcc"	/* 要使用的问题匹配程序。 */
			],
			"group": "build" /* 将任务标记为可通过 "运行生成任务" 命令访问的生成任务。*/
		}
	]
}

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注