ubuntu配置VScode

首先这里下载https://code.visualstudio.com/Download 安装 到桌面安装软件面板双机打开。(18.04bug多的一批!)

Vscode项目流程

  1. 因为Vscode是以文件夹的形式管理项目的,因此先创建文件夹hello
  2. hello新建main.cpp
# include <iostream>
using namespace std;
int main()
{   cout<<"hello-world!" << endl;
    return 0;
} 
  1. 更改 启动配置文件-----launch.json:
    点击左侧的Debug按钮---->创建launch.json文件---->选择C++(GDB/LLDB)----->默认配置----->将自动生成launch.json文件

{
//launch.json是必须的:
//1.配置编译文件的路径
//2.设置调试时的输出端(terminal终端?外部?还是同时)
    "configurations": [
        {
            "name": "(gdb) 启动",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/main.out",#编译输出位置
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",#根目录,宏形式
            "environment": [],
            "externalConsole": false,//不在外部,仅终端输出
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}


  1. 到这里所有的操作都满足了,直接在终端g++ -g main.cpp编译即可!(但是到这里还是不能解放用命令行编译执行的双手,于是有了task.json 懒人神器...)

  2. 如果不用命令行编译,还可以通过配置task.json, 将(编译、链接等)任务命令行构建成一个专门的任务名(即下文的label),即将 类似g++ -g main.cpp等g++命令 写入VScode的任务系统。

先在main.cpp文件内, 快捷键ctrl+shift+p打开命令行-----Tasks: Run task------>没有配置的任务,配置任务------>Create tasks.json file from template----->Others

{//生成的默认task.json文件
    "tasks": [
        {
            "label": "echo",//命令任务名称(这个任务名被执行就会表现出与在命令行运行echo "hello"一样的效果)
            "type": "shell",//shell命令
            "command": "echo 'Hello' " //任务核心:task.json的配置就是将你想在命令行执行的任务配置在其中,
/*当你trl+shift+p调出任务命令窗口时点调试命令时,点击一下你新建的任务名(label对应的值),就会自动根据前文配置的launch.json(找到工作目录以及要编译的文件名---根据编译输出文件名反推)以及你的command处设置的命令,自动完成命令操作。
然后点击调试出的运行即可在终端输出结果*/
        }
    ]
}

//更改默认的task.json文件,配置出一个build任务名的命令,用来解放命令行编译的双手!
{//新的task.json
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "g++",
            "args": ["-g", "${file}", "-std=c++11", "-o", "${fileBasenameNoExtension}.out"]
        
        }//可以通过这个文件来添加g++/gcc或者是make命令,方便我们编译程序。
    ]
}

/*
值得注意的是,每次更改了程序需要重新build,然后再进行调试;如果直接进行调试则运行的是上次build的结果。
作如下更改可以使得每次调试之前会自动进行build:
在launch.json文件中添加”preLaunchTask“=”build",也就是添加一个launch之前的要运行的任务,任务名为build,就是我们在tasks.json中设置的任务名。
这样,每次更改了项目文件,就可以直接点击调试运行输出新的结果(build会在运行前自动执行)
*/
posted @ 2020-11-08 03:19  Parallax  阅读(266)  评论(0编辑  收藏  举报