VCPKG安裝和使用教程(經(jīng)驗(yàn)總結(jié))
1. 安裝
去GitHub上下載源碼,然后點(diǎn)擊安裝腳本就可以了。
先決條件:
- Windows 7 或更高版本
- 用于 Windows 的 Git
安裝過(guò)程:
- vcpkg的GitHub主頁(yè)在這里:https://github.com/microsoft/vcpkg
- Visual Studio 2015 更新 3 或更高版本(帶英文語(yǔ)言包)
- 在“命令提示符”窗口中,為 vcpkg 的克隆實(shí)例創(chuàng)建目錄。 如果打算為不同的生成目標(biāo)安裝庫(kù),最好在目錄名稱中包含目標(biāo)。 建議使用短路徑名稱(不含空格)(如
C:\src\win32\
或C:\dev\iot\
),否則,某些端口生成系統(tǒng)可能會(huì)出現(xiàn)路徑問(wèn)題 。 在命令窗口中,切換到剛剛創(chuàng)建的目錄。 - 從 GitHub 克隆 vcpkg 存儲(chǔ)庫(kù):https://github.com/Microsoft/vcpkg。
git clone https://github.com/microsoft/vcpkg
此命令在 vcpkg
子目錄中創(chuàng)建存儲(chǔ)庫(kù)的本地副本。 此位置是此 vcpkg 克隆的 vcpkg 根目錄。
下載完成后,在“命令提示符”窗口切換到 vcpkg
目錄。
在 vcpkg 根目錄下,運(yùn)行 vcpkg 引導(dǎo)程序命令:
bootstrap-vcpkg.bat
引導(dǎo)程序?qū)⑹褂?Microsoft C/C++ 工具、庫(kù)和 Windows SDK 的位置配置 vcpkg。
更新 vcpkg
vcpkg 包管理器在 GitHub 上定期更新。 若要將 vcpkg 的克隆更新到最新版本,請(qǐng)從 vcpkg 根目錄運(yùn)行 git pull
。 此命令會(huì)將 vcpkg 的副本與 GitHub 上的版本同步。 下載完成后,再次運(yùn)行引導(dǎo)程序。 引導(dǎo)程序會(huì)重新生成 vcpkg 程序,但保留已安裝的庫(kù)。
卸載 vcpkg
若要卸載 vcpkg,只需刪除 vcpkg
目錄。 刪除此目錄會(huì)卸載 vcpkg 分發(fā)以及 vcpkg 已安裝的所有庫(kù)。
但是,如果已執(zhí)行 vcpkg integrate install
,則應(yīng)執(zhí)行 vcpkg integrate remove
來(lái)確保在刪除文件夾之前已清理集成 。
2. 使用
命令
Command | 描述 |
---|---|
vcpkg search [pat] | 搜索可安裝的包 |
vcpkg install <pkg>... | 安裝包 |
vcpkg remove <pkg>... | 卸載包 |
vcpkg remove --outdated | 卸載所有過(guò)期包 |
vcpkg list | 列出已安裝的包 |
vcpkg update | 顯示用于更新的包列表 |
vcpkg upgrade | 重新生成所有過(guò)期包 |
vcpkg hash <file> [alg] | 通過(guò)特定算法對(duì)文件執(zhí)行哈希操作,默認(rèn)為 SHA512 |
vcpkg integrate install | 使已安裝包在用戶范圍內(nèi)可用。 首次使用時(shí)需要管理權(quán)限 |
vcpkg integrate remove | 刪除用戶范圍的集成 |
vcpkg integrate project | 為使用單個(gè) VS 項(xiàng)目生成引用 NuGet 包 |
vcpkg export <pkg>... [opt]... | 導(dǎo)出包 |
vcpkg edit <pkg> | 打開(kāi)端口進(jìn)行編輯(使用 %EDITOR%,默認(rèn)為“code”) |
vcpkg create <pkg> <url> [archivename] | 創(chuàng)建新程序包 |
vcpkg cache | 列出緩存的已編譯包 |
vcpkg version | 顯示版本信息 |
vcpkg contact --survey | 顯示聯(lián)系信息,以便發(fā)送反饋。 |
選項(xiàng)
選項(xiàng) | 描述 |
---|---|
--triplet <t> | 指定目標(biāo)體系結(jié)構(gòu)三元組。 (默認(rèn):%VCPKG_DEFAULT_TRIPLET% ,另請(qǐng)參閱 vcpkg help triplet ) |
--vcpkg-root <path> | 指定 vcpkg 根目錄(默認(rèn):%VCPKG_ROOT% ) |
3. 集成vcpkg
Windows 上的 Visual Studio 集成
從 vcpkg 根目錄,運(yùn)行 vcpkg integrate install
來(lái)配置 Visual Studio,以便按用戶找到所有 vcpkg 頭文件和二進(jìn)制文件。 無(wú)需在 Visual Studio 中編輯 VC + + 目錄路徑。 如果有多個(gè) vcpkg 克隆,則你從中運(yùn)行此命令的克隆將成為新的默認(rèn)位置。
現(xiàn)在,只需鍵入文件夾/標(biāo)頭名稱即可輕松加入標(biāo)頭,并且自動(dòng)完成功能將幫助你完成這一切。 無(wú)需執(zhí)行任何額外的步驟即可鏈接到庫(kù)或添加項(xiàng)目引用。 下圖演示了 Visual Studio 查找 azure-storage-cpp 標(biāo)頭的方法。 Vcpkg 將其標(biāo)頭置于 /installed 子文件夾中,由目標(biāo)平臺(tái)予以分區(qū)。 下圖顯示庫(kù)的 /was 子文件夾中包含文件的列表:
Linux 或 macOS 上的 Visual Studio Code 集成
在 shell 或“終端”窗口中,將目錄更改為 vcpkg 根目錄。 然后運(yùn)行./vcpkg integrate install
,在 Linux 或 macOS 上配置 Visual Studio Code。 此命令將設(shè)置 vcpkg 工具和庫(kù)的位置,并對(duì)源文件啟用 IntelliSense。
刪除 vcpkg 集成
如果已使用 integrate 選項(xiàng),則應(yīng)在刪除 vcpkg 實(shí)例之前刪除該集成。 若要?jiǎng)h除和清理該集成,請(qǐng)將目錄更改為 vcpkg 根目錄。
- 在 Windows 上,運(yùn)行
vcpkg integrate remove
,確保清除該集成。 - 在 Linux 或 macOS 上,運(yùn)行
./vcpkg integrate remove
命令。
使用舉例
我現(xiàn)在的場(chǎng)景是我需要 libpng 來(lái)進(jìn)行開(kāi)發(fā),輸入命令:vcpkg install libpng
來(lái)安裝,可以看到他在開(kāi)始自動(dòng)下載。
注意我們可以使用.\vcpkg help triplet
來(lái)看庫(kù)支持的模式。
4. 詳細(xì)介紹
4.1 新增庫(kù)
使用指令:vcpkg help triplet
可以看到都支持什么平臺(tái)。
下載某一個(gè)平臺(tái)的包:.\vcpkg.exe install jsoncpp:x64-windows
(base) PS C:\Users\cds> vcpkg help triplet Available architecture triplets VCPKG built-in triplets: arm-uwp arm64-windows x64-linux x64-osx x64-uwp x64-windows-static x64-windows x86-windows VCPKG community triplets: arm-ios arm-linux arm-mingw-dynamic arm-mingw-static arm-windows arm64-ios arm64-linux arm64-mingw-dynamic arm64-mingw-static arm64-osx arm64-uwp arm64-windows-static-md arm64-windows-static ppc64le-linux s390x-linux wasm32-emscripten x64-ios x64-mingw-dynamic x64-mingw-static x64-openbsd x64-osx-dynamic x64-windows-static-md x86-freebsd x86-ios x86-mingw-dynamic x86-mingw-static x86-uwp x86-windows-static-md x86-windows-static x86-windows-v120
4.2 刪除庫(kù)
.\vcpkg.exe remove jsoncpp
注意:
這個(gè)時(shí)候只是移除了默認(rèn)的x86-winodws版本的文件,如果有其他平臺(tái)的版本需要移除,需要制定相應(yīng)的triplet。
移除也只是移除了二進(jìn)制程序庫(kù)而已,源碼包和解壓縮的源碼并沒(méi)有刪除。
4.3 查看已經(jīng)安裝的列表
.\vcpkg.exe list
4.4 更新已經(jīng)安裝的開(kāi)源庫(kù)
一般有兩種更新方式。一個(gè)是update指令,可以顯示可以升級(jí)的開(kāi)源庫(kù)的列表。另一個(gè)是upgrade的指令,會(huì)重新編譯所有需要更新的包。
到此這篇關(guān)于VCPKG安裝和使用教程的文章就介紹到這了,更多相關(guān)VCPKG安裝使用教程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語(yǔ)言實(shí)現(xiàn)的順序表功能完整實(shí)例
這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)的順序表功能,結(jié)合完整實(shí)例形式分析了C語(yǔ)言順序表的創(chuàng)建、添加、刪除、排序、合并等相關(guān)操作技巧,需要的朋友可以參考下2018-04-04C語(yǔ)言實(shí)現(xiàn)圖書管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01學(xué)好C++必須做到的50條 絕對(duì)經(jīng)典!
學(xué)好C++必須做到的50條,絕對(duì)經(jīng)典!想要學(xué)好C++的朋友一定要認(rèn)真閱讀本文,更要做到以下50條2016-09-09C C++算法題解LeetCode1408數(shù)組中的字符串匹配
這篇文章主要為大家介紹了C C++算法題解LeetCode1408數(shù)組中的字符串匹配示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的三子棋小游戲
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的三子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-03-03Unreal學(xué)習(xí)之簡(jiǎn)單三角形的繪制詳解
之所以寫這個(gè)繪制簡(jiǎn)單三角形的實(shí)例其實(shí)是想知道如何在Unreal中通過(guò)代碼繪制自定義Mesh,如果你會(huì)繪制一個(gè)三角形,那么自然就會(huì)繪制復(fù)雜的Mesh了。所以這是很多圖形工作者的第一課,快跟隨小編一起學(xué)習(xí)起來(lái)吧2023-02-02C++之string的模擬實(shí)現(xiàn)過(guò)程
這篇文章主要介紹了C++之string的模擬實(shí)現(xiàn)過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-06-06C++標(biāo)準(zhǔn)模板庫(kù)map的常用操作
今天小編就為大家分享一篇關(guān)于C++標(biāo)準(zhǔn)模板庫(kù)map的常用操作,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12