個人主頁:傳送門
背景
有時候需要在Windows上編寫C++
代碼,但是已經習慣了linux
下vim + gcc/clang
,并且不想安裝體積龐大的Visual Studio
。本文介紹如何一步步在Windows上使用Visual Studio Code
(以下簡稱VS Code
)搭建一個C++的開發調試環境。
安裝 VS Code
VS Code
是Microsoft
開發的免費、開源、跨平臺的文本編輯器。它同時支持Windows
、Linux
和MacOS
等操作系統。它支持調試、內置了Git版本控制功能,同時也具有代碼補全、代碼重構等功能。還支持擴展程序并在編輯器中內置了擴展程序管理的功能。
安裝VS Code
很簡單,官網下載Windows
版本,雙擊安裝。
安裝完成之后,通過擴展程序管理搜索安裝C/C++
擴展。如下:
安裝VIM
擴展。如下:
安裝完成之后重新加載即可生效。
安裝 msys2
利用msys2
可以在Windows
中使用Linux/Unix
軟件。msys2
提供了一個包管理系統Pacman
,可以很方便地安裝各種軟件。
1. 安裝 msys2
去msys2
官網下載對應的安裝程序。注意32位和64位系統的差別。
雙擊安裝,安裝完成之后直接運行:
或者從開始菜單運行:
2. 更新包數據庫及核心系統包
在打開的Terminal窗口中,輸入pacman -Syu
:
出現下面情況需要關閉Terminal,再次從開始菜單運行,然后輸入pacman -Su
更新剩余的部分:
等待更新完成...
注意點:
- 可能出現獲取錯誤是由于網絡原因,會自動重新嘗試,一般會成功。
- 有可能出現沖突,直接選
y
。 - 輸出更新信息:下載大小、安裝大小、凈更新大小。輸入
y
更新。 - 由于網絡狀況可能需要較長時間。
下面gcc
和clang
按需安裝!!!
3. 安裝 gcc
輸入pacman -Ss gcc
搜索gcc
結果如下:
選擇安裝mingw-w64-x86_64-toolchain
(64位),輸入pacman -S mingw-w64-x86_64-toolchain
:
4. 安裝 clang
輸入pacman -Ss clang
搜索clang
結果如下:
選擇安裝mingw-w64-x86_64-clang
(64位),輸入pacman -S mingw-w64-x86_64-clang
:
設置 Terminal
Windows上VS Code
默認的Terminal為PowerShell
。為了使用msys2
需要改成msys2
的bash
。
選擇文件->首選項->設置
:
左側是默認設置,我們需要修改右側的用戶設置來覆蓋默認的設置。這里設置了以下值:
-
window.zoomLevel
: 窗口縮放,0為不縮放。 -
terminal.integrated.shell.windows
: 設置為msys2
中bash
的路徑C:\\msys64\\usr\\bin\\bash.exe
。 -
terminal.integrated.shellArgs.windows
: 啟動bash
的參數,設置為["-i"]
表示啟動bash
后進入交互模式。 -
terminal.integrated.env.windows
: 啟動bash
的環境變量,設置為{ "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
。
編寫程序
打開一個空目錄,創建main.cpp
文件,輸入代碼。然后g++ -g main.cpp
編譯,./a.exe
運行:
也可以使用clang++ -g main.cpp
編譯,./a.exe
運行:
調試程序
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": ""
}
}
主要配置包含路徑,宏定義等內容。如下:
然后選擇調試->添加配置
修改內容如下:
變量窗口,監視窗口,調用堆棧,一些控制按鈕能完成基本的調試。
庫安裝
通過msys2
的包管理器pacman
可以很方便的安裝一些庫。一般先pacman -Ss
查找,找到自己想要安裝的指定版本的庫,然后通過pacman -S
安裝。例如下面是如何安裝boost
庫的:
輸入pacman -Ss boost
查找:
選擇安裝mingw-w64-x86_64-boost
,輸入pacman -S mingw-w64-x86_64-boost
安裝:
使用: