真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

記錄一次Win下的C++環(huán)境搭建(VSCode+MinGW+Clangd+xmake)

這套環(huán)境是VSCode+MinGW(MSYS2)+Clangd+Xmake的配置。

創(chuàng)新互聯(lián)建站從2013年創(chuàng)立,先為汾陽等服務(wù)建站,汾陽等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為汾陽企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

MinGW

網(wǎng)上很多教程引導(dǎo)去的MinGW-w64 gcc版本只更新到了8.1.0就停更了,而實(shí)際中g(shù)cc版本已經(jīng)到達(dá)12了,因此我們使用MSYS2去安裝GCC。

首先使用scoop安裝msys2(在main bucket中就有):

scoop install msys2

終端中輸入msys2進(jìn)入環(huán)境,下載minGW:

pacman -S mingw-w64-x86_64-toolchain

下面會(huì)提示選擇哪些工具,如果不是硬盤空間實(shí)在有限的話,直接回車默認(rèn)安裝全部即可。

隨后找到minGW的bin目錄(這里推薦一手Listary,直接搜索g++.exe打開文件目錄即可,非常方便),添加環(huán)境變量,此時(shí)GCC編譯器就算是安裝成功了。

clangd

這個(gè)是花費(fèi)了我最多精力的地方,有一說一,clangd在代碼提示補(bǔ)全上確實(shí)吊打vscode自帶的C/C++擴(kuò)展,但是在Windows上的配置費(fèi)了一番功夫

在vscode擴(kuò)展商店中搜索clangd下載,完成后右下角會(huì)彈窗提醒你安裝clangd server,點(diǎn)擊Install即可直接安裝,這一點(diǎn)非常便捷,clangd默認(rèn)直接綁定了VS路徑下的MSVC庫,如果需要修改為MinGW則要改動(dòng)target。

配置如下:

{
    "clangd.arguments": [
        "--header-insertion=never",
        "--completion-style=detailed",
        "--query-driver=D:\\6-EnglishPathSoftwates\\ScoopUser\\apps\\msys2\\2022-06-03\\mingw64\\bin\\g++*"
    ],
    "clangd.fallbackFlags": [
        "-std=c++14",
        "-I${workspaceFolder}/src/includes",
        "--target=x86_64-w64-windows-gnu"
    ]
}

逐一解釋:

  • header-insetion:是否自動(dòng)引入頭文件,這里設(shè)置的是從不。
  • completion-style:設(shè)置提示格式,這里設(shè)置的是展示所有細(xì)節(jié)。
  • query-driver:設(shè)置clangd server的驅(qū)動(dòng)庫路徑,這里我設(shè)置了mingw的路徑,但似乎沒有效果(clangd仍然鏈接到了MSVC當(dāng)中)
  • std:設(shè)置c++標(biāo)準(zhǔn)
  • -I:設(shè)置用戶自定義的庫路徑
  • --target:設(shè)置鏈接目標(biāo),這里改成了GNU,即對(duì)應(yīng)MinGW

學(xué)習(xí)C++ Primer這本書的需要注意一下,雖然全書是按照C++11標(biāo)準(zhǔn)寫的,但是這里如果設(shè)置成C++11,clangd會(huì)書中的附帶代碼報(bào)錯(cuò)(比如Sales_item.h)。

xmake

這是前段時(shí)間發(fā)現(xiàn)的一個(gè)新的構(gòu)建工具(也不算新了,好像已經(jīng)release兩年了),用的是lua腳本,在我學(xué)習(xí)C++Primer的過程中感覺比cmake更加簡潔易懂,用它管理我寫的習(xí)題集非常輕松。貼一段xmake的配置代碼:

target("E632")
    set_kind("binary")
    add_files("src/chapter6/e632.cpp")

target("E633")
    set_kind("binary")
    add_files("src/chapter6/e633.cpp")

target("E642")
    set_kind("binary")
    add_files("src/chapter6/e642.cpp")

target("E644")
    set_kind("binary")
    add_files("src/chapter6/e644.cpp")

這款工具也可以在scoop中直接下載,vscode也提供了官方插件快速操作(不過我覺得命令行已經(jīng)夠傻白甜了),推薦大家使用。

同時(shí)它也可以根據(jù)lua腳本直接生成CmakeList文件(也就是向下兼容Cmake),這個(gè)功能我沒有深入體驗(yàn)過,感興趣的可以嘗試一下。


網(wǎng)站名稱:記錄一次Win下的C++環(huán)境搭建(VSCode+MinGW+Clangd+xmake)
文章轉(zhuǎn)載:http://weahome.cn/article/dsoijjj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部