使用vcpkg安裝庫失敗的解決方法

1、前言

????????vcpk是是一款開源的c/c++庫管理工具,尤其是在windows平臺,可以幫助我們很好的管理各種依賴包。

? ? ? ? 在windows環境做c/c++開發的人應該都深有體會,有時候編譯需要下載一堆依賴庫,導致搭建編譯環境特別麻煩。但是,通過vcpkg工具可以幫助我們很好的下載、更新以及刪除這些依賴包。

? ? ? ? 但是,經常使用vcpkg安裝依賴庫時一個高頻出現的問題就是,很容易出現安裝包失敗!所以基于此,本文主要是說明如何解決安裝失敗的問題。

2、安裝失敗的原因分析

? ? ? ? 安裝某一個庫,vcpkg會自動安裝各種依賴的包,所以用起來很省心。但是,為了安裝一個庫,vcpkg會自動安裝很多依賴庫,依賴庫一多,自然就容易安裝失敗。

2.1 安裝過程分析

? ? ? ? 正常情況下,安裝某一個包,只需要一條簡單的安裝命令即可搞定,以安裝boost庫為例:

.\vcpkg install boost:x64-windows-static

雖然命令十分簡單,但是可以分為如下幾個過程:

  • 分析列出所有需要安裝的依賴庫
  • 逐個下載、編譯、安裝每個依賴庫

以安裝boost庫為例,可以看到這個庫依賴很多其他庫,因此每個庫都得安裝完成。

對于每一包,都可以分為下載、編譯、安裝等3個基本過程:

2.2 失敗原因分析

? ? ? ? 失敗最常見的原因的往往都是出現在下載這一步。因為網絡原因,從github上下載很不穩定。。。很容易失敗

3、如何安裝失敗的包

3.1 確定下載的位置

? ? ? ? 首先需要找到vcpkg安裝的位置,然后在在安裝目錄下面會有一個downloads子目錄,安裝過程中,所有的包都會先下載到這個目錄:

3.2 手動下載安裝包到downloards目錄

? ? ? ? 安裝失敗最多的原因就是下載下載,因此只需要手動下載安裝包到downloads即可。

如果安裝過程中,下載失敗,只需要復制下載到地址到瀏覽器中手動進行下載,然后將下載的安裝包復制到downloads目錄下

3.3?重新執行安裝命令

? ? ? ? 由于上面一步手動下載了安裝包,重新執行安裝命令時,由于檢測到已經下載好了安裝包,系統便會接著執行編譯、安裝等步驟,然后就可以看到成功安裝。

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

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

相關文章

前端 vue 面試題(二)

文章目錄 如何讓vue頁面重新渲染組件間通信vue為什么要mutation、 action操作插槽、具名插槽、作用域插槽vue編譯使用的是什么庫?vue怎么實現treeshakingwebpack實現treeshaking為什么只有es module 能支持 tree shaking mixin 的作用mixin的底層原理nexTick原理vue…

預處理機制

跟著肯哥(不是我)學預處理機制 預處理類別 宏定義:#define 將文本替換為表達式或語句 條件編譯:#ifdef、#ifndef和#if、#elif、#endif 根據標識符是否被定義選擇編譯代碼 頭文件包含:#include 將其他文件&#x…

Jmeter怎么實現接口關聯?

用于接口測試時,后一個接口經常需要用到前一次接口返回的結果,應該如何獲取前一次請求的結果值,應用于后一個接口呢,拿一個登錄的例子來說明如何獲取。 1、打開jmeter,新建一個測試計劃,在測試計劃里新建一…

將所有圖片居中對齊

Ctrl h 調出替換框 ^g表示所有圖片 格式里面選擇段落 全部替換

winlogbeat采集windows日志

下載鏈接 https://www.elastic.co/cn/downloads/past-releases/winlogbeat-7-16-2 配置文件 # ---------------------------- Elasticsearch Output ---------------------------- output.elasticsearch:# Array of hosts to connect to.hosts: ["192.168.227.160:9200&…

Vue3中如何響應式解構 props

目錄 1,前言2,解決2.1,利用插件,實現編譯時轉換2.2,toRef 和 toRefs 1,前言 Vue3 中為了保持響應性,始終需要以 props.x 的方式訪問這些 prop。這意味著不能夠解構 defineProps 的返回值&#…

Navicat 技術指引 | 適用于 GaussDB 的數據遷移工具

Navicat Premium(16.2.8 Windows版或以上) 已支持對 GaussDB 主備版的管理和開發功能。它不僅具備輕松、便捷的可視化數據查看和編輯功能,還提供強大的高階功能(如模型、結構同步、協同合作、數據遷移等),這…

Cesium 展示——地球以及渲染數據導出(下載)為圖片或 pdf

文章目錄 需求分析新加需求分析第一種方式第二種方式需求 將 Cesium 球體以及渲染數據導出為 jpg/png/pdf 分析 獲取場景 scene 信息,轉為image 的 octet-stream 流 進行下載為圖片 /*** @todo canvas 導出圖片* @param {string} dataurl - 地址* @return {Blob}*/ functio…

Failed to resolve import “@/..“ from “src/...“ @找不到路徑

安裝path npm install --save-dev types/node再修改 vite.config.ts 中的配置即可 import { defineConfig } from "vite" import react from "vitejs/plugin-react"import path from "path" // 需安裝此模塊// https://vitejs.dev/config/ expo…

設備健康管理平臺助力鋰電企業實現可持續發展

隨著鋰電池產業的快速發展,設備的穩定運行和精準維護對于鋰電企業來說至關重要。傳統的設備維護方式在效率和全面性方面存在局限,無法滿足鋰電行業對設備管理的需求。然而,通過設備健康管理平臺的引入,鋰電企業現在可以充分發揮其…

XSLVGL2.0 User Manual 頁面管理器(v2.0)

XSLVGL2.0 開發手冊 XSLVGL2.0 User Manual 頁面管理器 1、概述2、特性3、APIs3.1、xs_page_init3.2、xs_page_wait_inited3.3、xs_page_exit3.4、xs_page_acquire3.5、xs_page_release3.6、xs_page_set_bootlogo3.7、xs_page_setup_clear_finish3.8、xs_page_setup_is_finish…

【LeetCode:1410. HTML 實體解析器 | 模擬+哈希表+字符串+庫函數】

🚀 算法題 🚀 🌲 算法刷題專欄 | 面試必備算法 | 面試高頻算法 🍀 🌲 越難的東西,越要努力堅持,因為它具有很高的價值,算法就是這樣? 🌲 作者簡介:碩風和煒,…

【C語言】中,輸入一個數組,實現將輸入的n個數字按照從大到小的順序輸出。【通俗簡單易懂】

本篇文章中,我們將講述在C語言中,輸入一個數組,如何用for循環實現將輸入的n個數字按照從大到小輸出。 一.定義數組并初始化 首先,我們定義一個整形的數組并將其初始化。輸入n,來決定數組中整數的個數。 然后用for循…

通過HTML網頁對mysql數據庫進行增刪改查(CRUD實例)

首先我們得了解一下大致的架構 ,如下: 我們采用自底向上的方式進行開發, 一、先寫mysql數據庫 二、再寫java后端(Spring MVC架構)(這個是什么東西不懂不要緊,跟著步驟做就行了) 三、最后寫前端頁面(HTML) 一、 Mysql數據庫部分 我們要通過網頁對數據庫進行開發,…

解決:Gitee + PicGo配置圖床失敗

解決:Gitee PicGo配置圖床失敗 PicGo安裝插件的時候選擇:gitee-uploader,不要選擇gitee! 在Gitee新建的圖床倉庫中設置一個images文件夾,用來保存上傳的圖片,但是要注意在PicGo中的path中要寫上路徑/img…

數據庫基礎入門 — SQL運算符

我是南城余!阿里云開發者平臺專家博士證書獲得者! 歡迎關注我的博客!一同成長! 一名從事運維開發的worker,記錄分享學習。 專注于AI,運維開發,windows Linux 系統領域的分享! 本…

linux的基礎命令

文章目錄 linux的基礎命令一、linux的目錄結構(一)Linux路徑的描述方式 二、Linux命令入門(一)Linux命令基礎格式 三、ls命令(一)HOME目錄和工作目錄(二)ls命令的參數1.ls命令的-a選…

基于yolov2深度學習網絡的喝水行為檢測系統matlab仿真

目錄 1.算法運行效果圖預覽 2.算法運行軟件版本 3.部分核心程序 4.算法理論概述 4.1、YOLOv2網絡原理 4.2、基于YOLOv2的喝水行為檢測 5.算法完整程序工程 1.算法運行效果圖預覽 2.算法運行軟件版本 matlab2022a 3.部分核心程序 clc; clear; close all; warning off;…

PPT思維導圖怎么做?這2個思維導圖工具墻裂推薦!

在日常學習和工作中,我們常常會面臨需要處理大量信息的情況,這時候,一種叫做思維導圖的工具可能會成為你的救星。 不同于傳統的線性記錄方式,思維導圖以其獨特的視覺表現力和結構化的信息處理方式,使得人們能夠更加有…

Flutter學習(四)如何取消listview的越界效果

背景 在flutter的開發過程中,ListView是很常見的一個組件,但是,由于ListView的某些自帶的體驗,導致不太好的用戶體驗。例如ListView中,滑動到頂部或者底部的時候,再次滑動,會有越界的效果&…