最近想寫寫C++,裝了VisualStudio 2022,折騰半天。對于一個用慣VSCode的人來說,總感覺IDE太笨重。于是自己網(wǎng)上各種查資料,自己琢磨,搭建了一套Windows下基于VSCode和CMake的C++輕量級開發(fā)環(huán)境。
具體搭建步驟
1. 下載并安裝VSCode
VSCode下載地址(AzureCDN加速地址)
首先同意安裝協(xié)議:
下一步,方便起見全部都勾上:
之后點擊安裝即可:
2. 安裝必要的VSCode插件
這里推薦安裝Microsoft官方提供的Chinese簡體中文漢化包、C/C++、C/C++ Extension Pack三個插件,C/C++ Extension Pack擴展會自動為我們安裝CMake、CMake Tools等插件。
3. 下載并解壓MinGW64、CMake
MinGW全稱是Minimalist GNU on Windows,也就是將Linux/Unix環(huán)境下赫赫有名的GCC編譯器以及其相關(guān)的編譯調(diào)試組件移植到了Windows上。通過這個工具集我們就可以編譯、調(diào)試、運行和打包C/C++項目了。
MinGW64下載地址(github最新版 gcc 13.1.0)
github下載慢的話可以考慮GitHub文件加速:https://ghproxy.com
下載完成后解壓到某個指定的目錄即可 (記住這個目錄,后面會用到)
之后下載CMake,CMake是一款現(xiàn)代化的C++編譯打包工具,很多開源的C/C++都在用。個人感覺有點像Java的Maven構(gòu)建工具,但功能沒有Maven那么齊全。CMake下載地址(CMake官網(wǎng)最新版3.27.0)
下載完成后一樣,解壓到某個指定的目錄下即可 (同樣也要記住這個目錄)
最后的重頭戲就是用以上兩個解壓目錄配置環(huán)境變量啦,打開設(shè)置->系統(tǒng)->系統(tǒng)信息:
點擊系統(tǒng)信息->高級系統(tǒng)設(shè)置:
點擊環(huán)境變量:
選擇上下兩個Path都可
將 安裝目錄\bin
配置在Path變量中,之后一路點擊確定就大功告成了!
4. 添加.vscode目錄下的配置
使用VSCode打開一個空文件夾,創(chuàng)建一個叫做 .vscode
的文件夾 (注意前面有個英文句號.不要漏掉了),分別創(chuàng)建c_cpp_properties.json、settings.json、launch.json和tasks.json四個文件,文件內(nèi)容如下:
-
c_cpp_properties.json
{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ], "windowsSdkVersion": "10.0.17763.0", "compilerPath": "C:\\Users\\22820\\apps\\mingw64\\bin\\g++.exe", // 此處指定自己安裝的g++.exe地址 "cStandard": "c11", "cppStandard": "c++11", "intelliSenseMode": "${default}", "configurationProvider": "ms-vscode.cmake-tools" } ], "version": 4 }
-
settings.json
{ "cmake.cmakePath": "C:\\Users\\22820\\apps\\cmake-3.27.0\\bin\\cmake.exe" // 此處指定自己安裝的cmake.exe地址 }
-
launch.json
{ // 使用 IntelliSense 了解相關(guān)屬性。 // 懸停以查看現(xiàn)有屬性的描述。 // 欲了解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "(gdb) 啟動", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/build/cpp_learn", // build后面加CMakeLists.txt中project()中配置的項目名(CMakeLists.txt后文會介紹) "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "為 gdb 啟用整齊打印", "text": "-enable-pretty-printing", "ignoreFailures": true }, { "description": "將反匯編風(fēng)格設(shè)置為 Intel", "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } ], "preLaunchTask":"Build", "miDebuggerPath": "C:\\Users\\22820\\apps\\mingw64\\bin\\gdb.exe" // 此處指定自己安裝的gdb.exe地址 } ] }
-
tasks.json
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "options": { "cwd":"${workspaceFolder}/build" }, "tasks": [ { "label": "cmake", "type": "shell", "command": "cmake", "args":[ ".." ] }, { "label":"mingw32-make", // windows下用mingw32-make,Linux/Unix下直接使用make "group":{ "kind": "build", "isDefault": true }, "command":"mingw32-make", "args": [ ] }, { "label":"Build", "dependsOrder": "sequence", "dependsOn":[ "cmake", "mingw32-make" ] } ] }
5. 創(chuàng)建CMakeLists.txt文件,編寫main.cpp測試
在項目的根目錄下創(chuàng)建CMakeLists.txt(相當于Maven的pom.xml),具體內(nèi)容不要細究,先抄我的:
cmake_minimum_required(VERSION 3.15) # 指定cmake最小版本
project(cpp_learn) # 指定項目名稱
include_directories(cpp_learn include) # 指定頭文件目錄
aux_source_directory(cpp_learn src) # 指定源文件目錄
add_executable(cpp_learn src/main.cpp) # 指定程序入口
之后分別創(chuàng)建main.h和main.cpp到根目錄下的include文件夾和src文件夾中:
之后退出VSCode重新進一次就會發(fā)現(xiàn)CMake已經(jīng)開始工作了,在項目根目錄下生成了build文件夾,里面就是要編譯的內(nèi)容。其中cpp_learn.exe就是最終編譯的產(chǎn)物。
還支持gdb打斷點調(diào)試哦,打好斷點點下面的小蟲子(或者按F5)就可以開始調(diào)試了!
總結(jié)
通過使用VSCode搭建C++環(huán)境也不是一件很容易的事情吶!不過對于開發(fā)者來說,敢于嘗試敢于瞎折騰才是最重要的,要有小馬過河的精神嘛。不過話說回來這樣一搞終于可以擺脫Visual Studio 2022那個笨重的家伙了hhh,而且VSCode還可以自定義顏色主題,對于我這種顏控來說簡直不要太舒適~~文章來源:http://www.zghlxwxcb.cn/news/detail-615529.html
小彩蛋
VSCode好看的主題推薦:文章來源地址http://www.zghlxwxcb.cn/news/detail-615529.html
-
Darcula Theme:仿照JetBrains全家桶(Intellij IDEA、Web Storm、PyCharm等)的配色,屬于是對經(jīng)典的復(fù)刻了
-
One Dark Pro:VSCode最受歡迎的主題之一,清爽提神抗疲勞,深受廣大程序員的青睞
-
Atom One:有淺色和深色兩款主題可供選擇!而且都很好康哦
到了這里,關(guān)于Windows下基于VSCode搭建C++開發(fā)環(huán)境(包含整合MinGW64、CMake的詳細流程)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!