個人主頁:傳送門
背景
有時候需要在Windows上編寫C++
代碼,但是已經(jīng)習慣了linux
下vim + gcc/clang
,并且不想安裝體積龐大的Visual Studio
。本文介紹如何一步步在Windows上使用Visual Studio Code
(以下簡稱VS Code
)搭建一個C++的開發(fā)調(diào)試環(huán)境时甚。
安裝 VS Code
VS Code
是Microsoft
開發(fā)的免費、開源、跨平臺的文本編輯器撒顿。它同時支持Windows
、Linux
和MacOS
等操作系統(tǒng)荚板。它支持調(diào)試凤壁、內(nèi)置了Git版本控制功能,同時也具有代碼補全跪另、代碼重構(gòu)等功能拧抖。還支持擴展程序并在編輯器中內(nèi)置了擴展程序管理的功能。
安裝VS Code
很簡單免绿,官網(wǎng)下載Windows
版本唧席,雙擊安裝。
安裝完成之后,通過擴展程序管理搜索安裝C/C++
擴展淌哟。如下:
安裝VIM
擴展迹卢。如下:
安裝完成之后重新加載即可生效。
安裝 msys2
利用msys2
可以在Windows
中使用Linux/Unix
軟件绞绒。msys2
提供了一個包管理系統(tǒng)Pacman
婶希,可以很方便地安裝各種軟件。
1. 安裝 msys2
去msys2
官網(wǎng)下載對應的安裝程序蓬衡。注意32位和64位系統(tǒng)的差別。
雙擊安裝彤枢,安裝完成之后直接運行:
或者從開始菜單運行:
2. 更新包數(shù)據(jù)庫及核心系統(tǒng)包
在打開的Terminal窗口中狰晚,輸入pacman -Syu
:
出現(xiàn)下面情況需要關(guān)閉Terminal,再次從開始菜單運行缴啡,然后輸入pacman -Su
更新剩余的部分:
等待更新完成...
注意點:
- 可能出現(xiàn)獲取錯誤是由于網(wǎng)絡原因壁晒,會自動重新嘗試,一般會成功业栅。
- 有可能出現(xiàn)沖突秒咐,直接選
y
。 - 輸出更新信息:下載大小碘裕、安裝大小携取、凈更新大小。輸入
y
更新帮孔。 - 由于網(wǎng)絡狀況可能需要較長時間雷滋。
下面gcc
和clang
按需安裝!N木ぁ晤斩!
3. 安裝 gcc
輸入pacman -Ss gcc
搜索gcc
結(jié)果如下:
選擇安裝mingw-w64-x86_64-toolchain
(64位),輸入pacman -S mingw-w64-x86_64-toolchain
:
4. 安裝 clang
輸入pacman -Ss clang
搜索clang
結(jié)果如下:
選擇安裝mingw-w64-x86_64-clang
(64位)姆坚,輸入pacman -S mingw-w64-x86_64-clang
:
設置 Terminal
Windows上VS Code
默認的Terminal為PowerShell
澳泵。為了使用msys2
需要改成msys2
的bash
。
選擇文件->首選項->設置
:
左側(cè)是默認設置兼呵,我們需要修改右側(cè)的用戶設置來覆蓋默認的設置兔辅。這里設置了以下值:
-
window.zoomLevel
: 窗口縮放,0為不縮放萍程。 -
terminal.integrated.shell.windows
: 設置為msys2
中bash
的路徑C:\\msys64\\usr\\bin\\bash.exe
幢妄。 -
terminal.integrated.shellArgs.windows
: 啟動bash
的參數(shù),設置為["-i"]
表示啟動bash
后進入交互模式茫负。 -
terminal.integrated.env.windows
: 啟動bash
的環(huán)境變量蕉鸳,設置為{ "PATH": "/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowershell/v1.0/"}
設置完成后,使用Ctrl + `
打開的Terminal為bash
。
編寫程序
打開一個空目錄潮尝,創(chuàng)建main.cpp
文件榕吼,輸入代碼。然后g++ -g main.cpp
編譯勉失,./a.exe
運行:
也可以使用clang++ -g main.cpp
編譯羹蚣,./a.exe
運行:
調(diào)試程序
VS Code
中輸入Ctrl + Shift + P
,然后選擇C/CPP: Edit Configurations
:
在與Win32
同層次上增加以下配置:
{
"name": "MinGW",
"intelliSenseMode": "clang-x64",
"includePath": [
"${workspaceRoot}",
"C:/msys64/mingw64/include",
"C:/msys64/mingw64/c++/7.3.0",
"C:/msys64/mingw64/c++/7.3.0/tr1",
"C:/msys64/mingw64/c++/7.3.0/x86_64-w64-mingw32",
"C:/msys64/mingw64/x86_64-w64-mingw32/include"
],
"defines": [
"_DEBUG",
"UNICODE",
"__GNUC__=7",
"__cdecl=__attribute__((__cdecl__))"
],
"browse": {
"path": [
"C:/msys64/mingw64/lib/*"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
}
主要配置包含路徑乱凿,宏定義等內(nèi)容顽素。如下:
然后選擇調(diào)試->添加配置
修改內(nèi)容如下:
變量窗口,監(jiān)視窗口徒蟆,調(diào)用堆棧胁出,一些控制按鈕能完成基本的調(diào)試。
庫安裝
通過msys2
的包管理器pacman
可以很方便的安裝一些庫段审。一般先pacman -Ss
查找全蝶,找到自己想要安裝的指定版本的庫,然后通過pacman -S
安裝寺枉。例如下面是如何安裝boost
庫的:
輸入pacman -Ss boost
查找:
選擇安裝mingw-w64-x86_64-boost
抑淫,輸入pacman -S mingw-w64-x86_64-boost
安裝:
使用: