在visual studio中為C++程序安裝缺失開源庫

在visual studio中測試一個代碼時出現include了一個之前沒用過的開源庫的情況,因為之前C++用的少,這個問題比較基礎,也沒有找到能用的教程,就在這里記錄一下解決過程,以備不時之需。

顯然C++和Visual Studio的組合不如pycharm安裝軟件包那樣簡單無腦,這里要使用一個叫做【vcpkg】的工具

vcpkg 概述 | Microsoft Learn了解 vcpkg C/C++ 包管理器如何幫助你獲取和管理依賴項。https://learn.microsoft.com/zh-cn/vcpkg/get_started/overview

1.安裝vcpkg

首先我們安裝vcpkg,在安裝位置新建一個文件夾,打開powershell。

git clone?https://github.com/microsoft/vcpkg.git

安裝完成后需要手動初始化vcpkg

cd vcpkg
.\bootstrap-vcpkg.bat

這樣vcpkg就可以使用了

2.安裝依賴庫

這里我們安裝openssl

.\vcpkg install openssl:x64-windows

vcpkg會開始自動下載所需的庫,期間會下載一些其他的依賴軟件,這里需要有良好的能夠訪問github的網絡環境。如果沒有的話就會出現下面的情況。

總之就是在下載某個東西的時候網絡不太行,重試幾次都失敗就報錯退出下載流程了。到這里有幾種解決方式,要么解決網絡問題,要么換源,要么手動下載好報錯這一步的文件放在本地供vcpkg直接調用。

我用的方法是第三種,通過一些鏡像站下載到這個文件后,放在vcpkg的指定路徑:

下載好后,vcpkg會優先從本地找這個文件,也就不用擔心網絡問題了,這時再跑一邊

.\vcpkg install openssl:x64-windows

提示安裝成功。

3.把 vcpkg 集成到 VS

下載好開源庫后,運行這個命令:

.\vcpkg integrate install

輸出這個提示說明一切完成了。重啟一下visual studio重新打開這個項目,你的庫就可以正常include了

——END——

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86132.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86132.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86132.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CentOS加密技術全指南

文件系統加密 LUKS (Linux Unified Key Setup) 全盤加密配置方法 安裝前加密(Anaconda安裝向導選項) 在安裝CentOS時選擇"Encrypt my data"選項設置強密碼(建議20字符,混合大小寫、數字和特殊符號)密鑰槽管…

純血HarmonyOS5 打造小游戲實踐:繪畫板(附源文件)

OS 應用整體架構與技術棧 該繪圖應用采用了鴻蒙系統推薦的ArkUI框架進行開發,基于TypeScript語言編寫,充分利用了鴻蒙系統的圖形渲染和文件操作能力。應用整體架構遵循MVVM(Model-View-ViewModel)模式,通過State裝飾…

數據分析和可視化:Py爬蟲-XPath解析章節要點總結

重要知識點 XPath 概述:XPath 是一門可以在 XML 文件中查找信息的語言,也可用于 HTML 文件。它功能強大,提供簡潔明了的路徑表達式和多個函數,用于字符串、數值、時間比較等。1999 年成為 W3C 標準,常用于爬蟲中抓取網…

深入理解PHP中的生成器(Generators)

創建一個生成器非常簡單。你只需要像定義普通函數一樣定義它,但是使用yield關鍵字來產出值。例如,以下是一個簡單的斐波那契數列生成器: function fibonacci() {$num1 0;$num2 1;while (true) {yield $num1;$temp $num1 $num2;$num1 $n…

ubuntu 系統 pgm圖片和png相互轉化

ubuntu 系統 pgm圖片和png相互轉化。 安裝轉化工具: sudo apt-get install imagemagick pgm轉為png指令如下: convert input.pgm output.png png轉為pgm指令如下: convert input.png output.pgm

leetcode:98. 驗證二叉搜索樹

學習要點 加深純遞歸算法的理解 題目鏈接 98. 驗證二叉搜索樹 - 力扣&#xff08;LeetCode&#xff09; 題目描述 解法&#xff1a;純遞歸 vector<int> v;void dfs(TreeNode* root){if(root nullptr){return;}dfs(root->left);v.push_back(root->val);dfs(root…

如何確定IP的缺省子網掩碼是多少?

IP地址 201.100.200.1 的缺省子網掩碼由其 IP地址類別 決定。以下是判斷步驟&#xff1a; 1. 確定IP地址類別 IPv4地址分為 A、B、C、D、E 五類&#xff0c;根據第一個字節&#xff08;前8位&#xff09;的范圍劃分&#xff1a; A類&#xff1a;1.0.0.0 ~ 126.255.255.255&am…

Vue.js 粒子連線動畫組件 - FlyingLines

Vue.js 粒子連線動畫組件 - FlyingLines 使用指南 &#x1f31f; 簡介 FlyingLines 是一個基于 Vue.js 的炫酷粒子連線動畫組件&#xff0c;可以為您的網站添加動態的背景效果。該組件具有以下特點&#xff1a; ? 流暢動畫&#xff1a;基于 Canvas 的高性能渲染&#x1f5b…

無人機交互控制技術要點

一、技術要點 1. 物理交互設計 仿生柔性形態學&#xff1a;采用梯度剛度復合材料&#xff08;如硅膠-碳纖維&#xff09;設計柔性抓取器&#xff0c;模仿鳥類爪部結構&#xff0c;實現被動碰撞抑制與動態力生成&#xff0c;支持高速交互&#xff08;>3 m/s&#xff09;和…

qt集成openssl

第一&#xff1a;下載項目中對應版本的openssl的庫 https://openssl-library.org/source/old/1.0.2/ 老版本的openssl的下載地址&#xff0c;這個下載的好像是源碼&#xff0c;還要編譯。 https://indy.fulgan.com/SSL/ 在這里下載不需要編譯&#xff0c;下載下來直接用dll文件…

【鴻蒙HarmonyOS Next App實戰開發】??ArkUI時鐘界面實現解析:動態雙模式時鐘與沉浸式體驗?

在鴻蒙next系統上&#xff0c;通過ArkTS寫了個時鐘顯示頁面&#xff0c;集成在【圖影工具箱】應用中&#xff0c;應用商店可以下載使用。 這個頁面實現起來比較簡單&#xff0c;就是左邊一個模擬時鐘&#xff0c;右邊一個數字時鐘&#xff08;包含時間和日期的文字&#xff09…

ios簽名錯誤的解決辦法

另一種最常見的解決方案。在終端中運行以下命令。您應該添加自己的鑰匙串名稱和密碼。security lock-keychain temp.keychainsecurity unlock-keychain -pp ssw0rd temp.keychain在這種情況下&#xff0c;使用鑰匙串名稱為“temp”&#xff0c;其密碼為“p ssw0rd”。此外&am…

C#讀取OPCUA節點數據

本人第一次接觸OPCUA&#xff0c;如有不對的地方望指正&#xff0c;獲取的是公司的OPCUA服務器的數據 方式一&#xff1a; 測試環境: window11 vs2022 OPCFoundation.NetStandard.Opc.Ua .net framework 4.8 (2025-06-23 經過測試&#xff0c;.net8也可以使用這套.net …

OpenCV計算機視覺實戰(11)——邊緣檢測詳解

OpenCV計算機視覺實戰&#xff08;11&#xff09;——邊緣檢測詳解 0. 前言1. Sobel 算子與方向梯度1.1 Sobel 算子簡介1.2 實現過程 2. Laplacian 邊緣檢測2.1 Laplacian 算子簡介2.2 實現過程 3. Canny 算法3.1 Canny 算法簡介3.2 實現過程 小結系列鏈接 0. 前言 邊緣檢測能…

哈爾濱idc服務器租用-青蛙云

在數字化浪潮洶涌的當下&#xff0c;企業對于服務器的需求愈發強烈。哈爾濱作為東北地區重要的經濟文化中心&#xff0c;其 IDC 服務器租用市場也呈現出蓬勃發展的態勢。眾多企業在尋求 IDC 服務器租用時&#xff0c;青蛙云憑借自身顯著優勢脫穎而出&#xff0c;成為眾多用戶的…

Zephyr 系統深入解析:SoC 支持包結構與中斷調度器調優實踐

本文將全面深入講解 Zephyr RTOS 的 SoC 支持包設計架構&#xff08;SoC Series / SoC Variant&#xff09;、中斷系統實現、調度器原理、時間片與優先級調優技巧&#xff0c;以及如何在實際項目中構建自定義 SoC 支持包、實現高效的調度器策略和系統性能優化。全文超過 5000 字…

FPGA基礎 -- Verilog 結構建模之模塊參數值

Verilog 中模塊參數值&#xff08;parameter&#xff09;的使用&#xff0c;這是結構建模和模塊可配置設計的核心機制&#xff0c;廣泛應用于 總線寬度配置、流水線級數、功能開關、模塊復用 等場景。 一、什么是模塊參數值&#xff08;parameter&#xff09; parameter 是 Ver…

Skrill是什么?中國用戶能用嗎?安全嗎?完整指南

什么是Skrill&#xff1f; Skrill 前身為 Moneybookers&#xff0c;成立于 2001 年&#xff0c;總部位于英國倫敦&#xff0c;目前隸屬于 Paysafe 集團。作為一個多功能電子支付平臺&#xff0c;Skrill 支持全球 100 多個國家和地區、40 多種貨幣&#xff0c;被廣泛用于&#…

java+vue+SpringBoo校園部門資料管理系統(程序+數據庫+報告+部署教程+答辯指導)

源代碼數據庫LW文檔&#xff08;1萬字以上&#xff09;開題報告答辯稿ppt部署教程代碼講解代碼時間修改工具 技術實現 開發語言&#xff1a;后端&#xff1a;Java 前端&#xff1a;vue框架&#xff1a;springboot數據庫&#xff1a;mysql 開發工具 JDK版本&#xff1a;JDK1.…

Java中的Map實現類詳解

Java中的Map實現類詳解 Java集合框架提供了多種Map接口的實現&#xff0c;每種實現都有其特定的使用場景和特點。以下是主要的Map實現類及其特性分析&#xff1a; 1. 通用Map實現 HashMap 特點&#xff1a;基于哈希表的實現&#xff0c;允許null鍵和null值線程安全&#xf…