【開發環境搭建】windows平臺下搭建VSCODE C/C++ 調試運行環境

(一)背景介紹

相信大家作爲一個程序員都有自己所鍾愛的編輯器和編譯器,但是有一點是肯定的,並不是所有的編輯器都是適合自己的。有人或許會問windows選擇編輯器還需要糾結嗎,做嵌入式的用keil,玩x86的就用visual stdio。沒錯這兩款編輯器基本滿足了我們開發者的需求,但是一方面,雖然KEIL做沒有操作系統的ARM開發是很香,集編輯編譯軟硬件調試工程管理爲一體,但是嵌入式做到深處到了操作系統這個層次KEIL基本就沒什麼軟用了。
在過去的很長一段時間裏,我都在急切的尋找這一款一方面看起來很牛逼,而且可以很省心的IDE,然後我找到了,他叫VSCODE,是我目前發現的最適合我的編輯器。

(二)爲什麼選擇vscode 而不是visual studio

1.這是一個半開放的編輯器

爲什麼要叫他半開放,這個編譯器並沒有向程序員隱藏技術細節,一開始這個只是一個簡單的文本代碼編輯器,類似於NOTEPAD之類東西,但是程序員可以按照自己的喜好去配置適合自己的開發環境。使他成爲一個可以個人定製的IDE。
很久之前我就說過當在使用KEIL,和visual studio的時候明顯有一種被人安排了的感覺,沒錯就是被安排了,我們所做的就是簡單的敲一敲代碼,然後按一下F5,這種事情找一個非程序員人學習一段時間相信也可以熟練的使用。但是在vscode裏面所有的編譯命令都是自己用類似於LINUX命令行的方式敲出來的,爲了簡便我們還可以使用腳本快捷編譯。

2.這個編輯器看起來是真的牛逼

在這裏插入圖片描述
這是我下載完插件以後的情況,是不是看起來就有想擼代碼的慾望。

3.內嵌了類似於LINUX的命令行

在vscode的內嵌命令行裏你可以體驗到LINUX操作的感覺。

4.開機賊快

我不知道什麼算快,反正他的開機時間是visual stdio的三分之一。

5.自動支持github環境

內嵌了github的常見操作,再也不用爲記不住命令行而煩惱了

(三)怎樣讓你的vscode看起來更牛逼

這就是裝插件了。
把這些插件裝上基本就沒問題了

1)、C/C++,這個肯定是必須的。
2)、C/C++ Snippets,即 C/C++重用代碼塊。
3)、C/C++ Advanced Lint,即 C/C++靜態檢測 。
4)、Code Runner,即代碼運行。
5)、Include AutoComplete,即自動頭文件包含。
6)、Rainbow Brackets,彩虹花括號,有助於閱讀代碼。
7)、One Dark Pro,VSCode 的主題。
8)、GBKtoUTF8,將 GBK 轉換爲 UTF8。
9)、ARM,即支持 ARM 彙編語法高亮顯示。
10)、Chinese(Simplified),即中文環境。
11)、vscode-icons,VSCode 圖標插件,主要是資源管理器下各個文件夾的圖標。
12)、compareit,比較插件,可以用於比較兩個文件的差異。
13)、DeviceTree,設備樹語法插件。

裝上這些對於嵌入式應用就夠了。
改語言,雖然英文看起來更專業,但是好像還是中文開發環境更舒服。
按下“Ctrl+Shift+P”打開搜索框,在搜索框裏面輸入“config”,然後選擇“Configure Display Language”,在打開的 local.json 文件中將 locale 修改爲 zh-cn。

(四)搭建編譯環境

這個比較麻煩一點,首先必須配置一下環境變量。讓命令行可以識別gcc,g++命令這個涉及到安裝編譯器。但是如果你之前安裝過其他編譯器的話那就不用這麼麻煩了。
在這裏插入圖片描述

因爲之前安裝過QT直接就用QT來幹活了
這樣就OK了,然後你的vscode就可以直接使用命令行了。
gcc命令行相信都會敲,但是隻用一個文件還算簡單,可是當你要管理更多的文件的時候,就不太方便了好在vscode 有自己管理方式。
在這裏插入圖片描述

  1. 在工程目錄.vscode文件夾下新建兩個文件:launch.json(配置調試選項),task.json
  2. 修改系統設置腳本

這是我一個數值計算項目的目錄結構,要完成配置只需要,配置.vscode文件夾下的兩個腳本文件即可。

{  
    "version": "0.2.0",  
    "configurations": [  
        
        {  
            "name": "(gdb) Launch", // 配置名稱,將會在啓動配置的下拉菜單中顯示  
            "type": "cppdbg",       // 配置類型,這裏只能爲cppdbg  
            "request": "launch",    // 請求配置類型,可以爲launch(啓動)或attach(附加)  
            "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",// 將要進行調試的程序的路徑  
            "args": ["-I../include"],             // 程序調試時傳遞給程序的命令行參數,一般設爲空即可  
            "stopAtEntry": false,   // 設爲true時程序將暫停在程序入口處,一般設置爲false  
            "cwd": "${workspaceFolder}", // 調試程序時的工作目錄,一般爲${workspaceFolder}即代碼所在目錄  
            "environment": [],  
            "externalConsole": true, // 調試時是否顯示控制檯窗口,一般設置爲true顯示控制檯  
            "MIMode": "gdb",  
            "miDebuggerPath": "E:\\QT\\QTCreater\\Tools\\mingw530_32\\bin\\gdb.exe", // miDebugger的路徑,注意這裏要與MinGw的路徑對應  
            "preLaunchTask": "g++", // 調試會話開始前執行的任務,一般爲編譯程序,c++爲g++, c爲gcc  
            "setupCommands": [  
                {   
		    "description": "Enable pretty-printing for gdb",  
                    "text": "-enable-pretty-printing",  
                    "ignoreFailures": true  
                }  
            ]  
        }  
    ]  
}

{
    "version": "2.0.0",
    "command": "g++",
    "args": ["-g","${file}","-I./include","-o","${fileBasenameNoExtension}.exe"],    // 編譯命令參數
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

此外應該修改設置腳本

"code-runner.executorMap": {
    "cpp": "cd $dir && g++ -g ./*.cpp -fpermissive -I../include -o test && ./test"
    },
    "code-runner.respectShebang": false,
    "code-runner.runInTerminal": true 

在配置腳本末尾gcc編譯命令。

配置完成點擊右上角三角形即可運行,點擊F5可以調試。

如果需要配置類似於opencv和qt的動態庫的話在命令行中添加鏈接頭文件的庫文件的選項即可。但是如果程序要單獨運行,需要在同級目錄有庫文件。

發佈了61 篇原創文章 · 獲贊 60 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章