Ubuntu下安裝並配置VS Code編譯C++

做者:tongqingliu
轉載請註明出處:http://www.cnblogs.com/liutongqing/p/7069091.htmlhtml

Ubuntu下安裝並配置VS Code編譯C++

網上看了不少教程,寫的都不細緻,或者我理解不夠透徹,一步一步操做下來,老是錯誤百出。好不容易成功一次,現將完整過程記錄以下ios

安裝VS Code

sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make
sudo apt-get update
sudo apt-get install ubuntu-make
sudo umake web visual-studio-code

而後按a直接默認贊成就能夠。web

安裝插件

打開VS Code後,按crtl + shift + P調出命令行,而後搜索C++,安裝微軟本身開發的那個。
一樣能夠安裝C++ Intellisense插件,用於自動補全代碼。json

配置launch.json和tasks.json

注意VS Code只能打開源碼所在的文件夾,而不是直接打開源碼文件,不然下面將沒法進行!ubuntu

打開源碼所在文件夾後,在該文件夾中打開源碼。按F5鍵,選擇C++,visual-studio-code

而後會自動生成launch.json文件,下面只須要修改兩個地方
bash

"program": "enter program name, for example \${workspaceRoot}/a.out",

改成visual-studio

"program": "${workspaceRoot}/a.out",

測試

"cwd": "\${workspaceRoot}",

改成spa

"cwd": "${workspaceRoot}",

完整的launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceRoot}/a.out",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceRoot}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

而後,調出命令行,輸入Task Runner,選擇others

此時將自動生成tasks.json
將其中的

"command": "echo",

改成

"command": "g++",

"args": ["Hello World"],

改成

"args": ["-g","${workspaceRoot}/main.cpp"],

注意這裏的main.cpp要和你當前路徑的源碼名稱一致。
完整的tasks.json

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "g++",
    "isShellCommand": true,
    "args": ["-g","${workspaceRoot}/main.cpp"],
    "showOutput": "always"
}

運行測試

隨便編寫個代碼

#include<iostream>
using namespace std;

int main()
{
    cout<<"hello VS Code"<<endl;
    return 0;
}

按crtl + shift + B構建,按F5運行,發現終端一閃而過,什麼都沒有輸出。因而考慮Windows下的辦法。

#include<iostream>
#include<stdlib.h>
using namespace std;

int main()
{
    cout<<"hello VS Code"<<endl;
    system("pause");
    return 0;
}

一樣並無卵用。那就換一種方式。

#include<iostream>
#include<stdio.h>
using namespace std;

int main()
{
    cout<<"hello VS Code"<<endl;
    getchar();
    return 0;
}

按crtl + shift + B構建,按F5運行,程序完美輸出。有圖爲證,哈哈

後記:
期間在終端裏執行了如下操做

sudo apt-get install clang

若是提示Clang有錯能夠運行該命令,安裝clang。

那麼問題來了,是否是換個文件夾每次寫個代碼都得配置lauch.json和task.json文件呢?或者將.vscode文件夾複製到當前文件夾下?這樣豈不是很麻煩,細思極恐

參考:

http://blog.csdn.net/bianlihao1993/article/details/71108233

相關文章
相關標籤/搜索