vs code 配置.json文件引入makefile文件實現多文件編譯

背景: 以前使用VS code寫c++時,沒使用到多文件,因此對launch.jason和task.jason配置沒過多配置,但不支持多文件間的編譯,調試。 
注:主要針對較大的一些工程,涉及多個文件的編譯,使用到Makefile。若是一個頭文件和cpp文件能夠看其餘教程 
平臺:Ubuntu 16.04 LTS && VS Code 1.22python

1. launch.json的配置
在官網查看幫助文檔,介紹了python的json文件的配置,有些默認版本並不對應,不具有解決個人要求。因此查了一些其餘資料,解決問題。至於json文件怎麼出來,不介紹了。在歡迎界面有些使用教程和命令,先熟悉下這個再說。 
c++

     {
    // 使用 IntelliSense 瞭解相關屬性。 
    // 懸停以查看現有屬性的描述。
    // 欲瞭解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/dstar",    //這裏由於我調試的是dstar算法,因此調試文件換成dstar
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "preLaunchTask": "build",               //重點,這個是模板沒有的選項,須額外加入
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
        ]
    },
    { 
        "name": "(gdb) Attach",
        "type": "cppdbg",
        "request": "attach",
        "program": "${workspaceFolder}/build",            //這個改下
        "processId": "${command:pickProcess}",
        "MIMode": "gdb",
        "setupCommands": [
            {
                "description": "Enable pretty-printing for gdb",
                "text": "-enable-pretty-printing",
                "ignoreFailures": true
            }
        ]
    },
]
}`
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
2.tasks.json的配置
{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "make",            //主要的就是這個,表示執行make命令(注,文件夾下須要Makefile文件)     
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }算法

    ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17shell


3. 關於問題 -make: Nothing to be done for ‘all’.
當你Ctrl+Shile+B進行編譯時(再次強調歡迎界面的使用文檔看下,熟悉一下),可能出現上述問題。這個是說已經編譯過該項目,沒有任何改動,再也不麻煩編譯器了。 
   測試:make clean 這時看到左上方文件列表中的dstar執行文件刪除。再Ctrl+Shile+B json

編譯成功,執行文件dstar從新出現。 
給個執行後的圖像吧 測試

--------------------- 
做者:我吃龍蝦 
來源:CSDN 
原文:https://blog.csdn.net/m0_37433067/article/details/80145679 
版權聲明:本文爲博主原創文章,轉載請附上博文連接!ui

相關文章
相關標籤/搜索