vcpkg 从清单文件安装依赖项

vcpkg 有两种运行模式:经典模式和清单模式。清单文件有自己的 vcpkg_installed 目录,可在其中安装依赖项,与所有包都安装在通用 %VCPKG_ROOT%/installed 目录中的经典模式不同。 因此,每个项目都可以有自己的清单和自己的一组依赖项,这些依赖项不会与其他项目的依赖项发生冲突。

1. 创建包含清单的项目

#include <iostream>
#include <sqlite3.h>int main() {sqlite3 *db;int exit = 0;exit = sqlite3_open("test.db", &db);if (exit) {std::cerr << "Can't open database: " << sqlite3_errmsg(db) << std::endl;} else {std::cout << "Opened database successfully!" << std::endl;}sqlite3_close(db);return 0;
}

2. 添加依赖项

2.1 在项目路径打开命令行工具

依次点击 工具 -> 命令行 -> 开发者 PowerShell 。

2.2 创建清单文件

vcpkg new --application

2.3 添加依赖项

vcpkg add port fmt
vcpkg add port sqlite3

默认 vcpkg-configuration.json 文件引入了基线约束,指定项目应使用的依赖项的最低版本。

3. 手动安装依赖项

只需在包含清单文件的目录中运行 vcpkg install。该命令完成后,所有生成的包都将出现在 vcpkg_installed 目录中。

vcpkg install

4. 构建项目(可选)

默认情况下,Visual Studio 项目中禁用清单模式。 要启用清单,请在解决方案资源管理器中右键单击项目,选择属性,选择左侧的 vcpkg 选项卡,然后将 Use Vcpkg Manifest 设置为

补充:

1.)已存在清单

error: D:\SynologyDrive\Workstation\Demo\SQLiteDemo\vcpkg.json 下已存在清单。

原因:已经存在 vcpkg.json 文件。

解决:删除vcpkg.json 文件。

2.)不支持单个包参数

error: 在清单模式下,`vcpkg install` 不支持单个包参数。
要安装其他包,请编辑 vcpkg.json,然后在没有任何包参数的情况下运行 `vcpkg install`。
有关详细信息,请参阅 https://learn.microsoft.com/vcpkg/users/manifests。

原因:使用vcpkg install 时, 多加参数。如: vcpkg install sqlite3 。

解决:在清单模式下,直接使用 vcpkg install 。

3.)MSB3073错误

严重性    代码    说明    项目    文件    行    禁止显示状态    详细信息
错误    MSB3073    命令“"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\vcpkg.exe" install  --x-wait-for-lock --triplet "x64-windows" --vcpkg-root "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\\" "--x-manifest-root=D:\SynologyDrive\Workstation\Demo\SQLiteDemo\\" "--x-install-root=D:\SynologyDrive\Workstation\Demo\SQLiteDemo\vcpkg_installed\x64-windows\\" ”已退出,代码为 1。    SQLiteDemo    C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\scripts\buildsystems\msbuild\vcpkg.targets    183        
严重性    代码    说明    项目    文件    行    禁止显示状态    详细信息
错误    MSB3073    命令“"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\vcpkg.exe" install  --x-wait-for-lock --triplet "x64-windows" --vcpkg-root "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\\" "--x-manifest-root=D:\SynologyDrive\Workstation\Demo\SQLiteDemo\\" "--x-install-root=D:\SynologyDrive\Workstation\Demo\SQLiteDemo\vcpkg_installed\x64-windows\\" ”已退出,代码为 1。    SQLiteDemo    C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\vcpkg\scripts\buildsystems\msbuild\vcpkg.targets    183        

原因:没有足够的权限、已经存在 vcpkg_installed 目录或清单文件配置错误。

解决:删除 vcpkg_installed 目录,以管理员身份运行 Visual Studio,重新生成解决方案。

4.)添加环境变量

设置 VCPKG_ROOT 将告知 vcpkg 实例所在的位置。添加到 PATH 直接从 shell 运行 vcpkg 命令。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56388.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言机器学习算法实战系列(十)自适应提升分类算法 (Adaptive Boosting)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍原理步骤教程下载数据加载R包导入数据数据预处理数据描述数据切割调节参数构建模型预测测试数据评估模型模型准确性混淆矩阵模型评估指标ROC CurvePRC Curve特征的重要性保存模型总…

生发产品哪个效果最好?油秃头秋冬季养发搭子

如果你是大额头 或者 M型发际线&#xff0c;无论是天生的 亦或者是后天造成的&#xff0c;养发防脱一定要重视起来&#xff0c;因为防脱育发是需要循序渐进坚持的&#xff0c;今天就给大家分享一下几个特别有效的育发液&#xff0c;选对产品养发那真是稳了~ 1、露卡菲娅防脱育发…

Unity之XR Interaction Toolkit 射线拖拽3DUI

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、想实现的功能二、实现原理1.UI挂在XRGrabInteractable、刚体、BoxCollder2.修改刚体属性3.加BoxCollder 总结 前言 VR项目里正常情况有放置两种3DUI的方式…

Ovis: 多模态大语言模型的结构化嵌入对齐

论文题目&#xff1a;Ovis: Structural Embedding Alignment for Multimodal Large Language Model 论文地址&#xff1a;https://arxiv.org/pdf/2405.20797 github地址&#xff1a;https://github.com/AIDC-AI/Ovis/?tabreadme-ov-file 今天&#xff0c;我将分享一项重要的研…

关于使用 C# 处理水位数据多种格式的统一转换

关于使用 C# 处理水位数据多种格式的统一转换 1、前言2、水位数据的多种格式3、水位数据多种格式的统一转换程序展示4、水位数据多种格式的统一转换 C# 代码4.1、声明引用命名空间4.2、多种格式的统一转换 C# 代码4.3、多种格式的统一转换 C# 代码&#xff0c;文件输出保存 1、…

微知-Lecroy力科的PCIe协议分析仪型号命名规则(PCIe代,金手指lanes数量)

文章目录 要点主要型号命名规则各代主要产品图片Summit M616 协议分析仪/训练器Summit T516 分析仪Summit T416 分析仪Summit T3-16分析仪Summit T28 分析仪 综述 要点 LeCroy(力科)成立于1964年&#xff0c;是一家专业生产示波器厂家。在美国纽约。一直把重点放在研制改善生产…

Hallo2 长视频和高分辨率的音频驱动的肖像图像动画 (数字人技术)

HALLO2: LONG-DURATION AND HIGH-RESOLUTION AUDIO-DRIVEN PORTRAIT IMAGE ANIMATION 论文&#xff1a;https://arxiv.org/abs/2410.07718 代码&#xff1a;https://github.com/fudan-generative-vision/hallo2 模型&#xff1a;https://huggingface.co/fudan-generative-ai/h…

TikTok营销实用技巧与数据分析工具:视频洞察

TikTok凭借其独特的机制和庞大的流量&#xff0c;成为了众多品牌和卖家对产品进行宣传推广的必要平台之一。要在TikTok上优化营销效果、提升推广效率&#xff0c;可以使用平台提供的重要工具——视频洞察&#xff08;Video Insights&#xff09;。 一、视频洞察功能与技巧 视频…

线性回归(一)

线性回归 1.基本术语 ①特征&#xff1a;预测所依据的自变量称为特征或协变量 ②标签&#xff1a;试图预测的目标称为标签或目标 2.举个栗子 线性假设是指目标&#xff08;房屋价格&#xff09;可以表示为特征&#xff08;面积和房龄&#xff09;的加权和&#xff0c;如下面…

YOLOv11入门到入土使用教程(含结构图)

一、简介 YOLOv11是Ultralytics公司在之前的YOLO版本上推出的最新一代实时目标检测器&#xff0c;支持目标检测、追踪、实力分割、图像分类和姿态估计等任务。官方代码&#xff1a;ultralytics/ultralytics&#xff1a;ultralytics YOLO11 &#x1f680; (github.com)https://g…

解决跨域问题

跨域是浏览器受同源策略的限制&#xff0c;同源策略是浏览器为确保资源安全&#xff0c;而遵循的一种策略&#xff0c;该策略对访问资源进行了一些限制&#xff08;如发送 ajax 请求&#xff0c;操作 dom&#xff0c;读取 cookie&#xff09;。 最常见的影响就是发送 ajax 请求…

【微知】如何通过命令行在非串口界面触发sysrq的help信息?(echo h > /proc/sysrq-trigger)

背景 在服务器上&#xff0c;触发sysrq通常需要在串口执行sysrq热键&#xff0c;比如 ~相关的操作 如何通过在ssh界面触发sysrq触发一些操作&#xff1f; 命令 通过sysrq指定的/proc接口文件进行操作 echo h > /proc/sysrq-trigger dmesg #产看输出的帮助信息然后根据打…

Junit + Mockito保姆级集成测试实践

一、做好单测&#xff0c;慢即是快 对于单元测试的看法&#xff0c;业界同仁理解多有不同&#xff0c;尤其是在业务变化快速的互联网行业&#xff0c;通常的问题主要有&#xff0c;必须要做吗&#xff1f;做到多少合适&#xff1f;现在没做不也挺好的吗&#xff1f;甚至一些大…

MYSQL-SQL-01-DDL(Data Definition Language,数据定义语言)

DDL&#xff08;数据定义语言&#xff09; DDL&#xff08;Data Definition Language&#xff09;&#xff0c;数据定义语言&#xff0c;用来定义数据库对象(数据库&#xff0c;表&#xff0c;字段) 。 一、数据库操作 1、 查询mysql数据库管理系统的所有数据库 语法&#…

django(3)jinja2模版的使用

启动模版 安装jinja2 pip install jinja2 配置setting TEMPLATES中添加配置 {BACKEND: django.template.backends.jinja2.Jinja2,DIRS: [os.path.join(BASE_DIR,jinja2)], #模版在项目中的所在位置} template中各项的含义 这个配置项中模版自上而下加载&#xff0c;重名…

Spring Boot框架的电影评论系统设计与实现

3系统分析 3.1可行性分析 通过对本电影评论网站实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本电影评论网站采用SSM框架&#xff0c;JAVA作为开发语言&#…

基于单片机的智能小区门禁系统设计(论文+源码)

1总体架构 智能小区门禁系统以STM32单片机和WiFi技术为核心&#xff0c;STM32单片机作为主控单元&#xff0c;通过WiFi模块实现与手机APP的连接&#xff0c;构建整个门禁系统。系统硬件包括RFID模块、指纹识别模块、显示屏、按键以及继电器。通过RFID绑定IC卡、APP面部识别、指…

Linux中Kconfig结构分析

目录结构中&#xff0c;某一层的内容无非就是&#xff0c;要么全是目录&#xff0c;要么全是文件&#xff0c;要么既有目录又有文件&#xff0c;我们的Kconfig文件通常是分布在各级目录中。那么&#xff0c;这些Kconfig如何一层一层地去组织起来呢&#xff1f; 首先明确下&…

VTK的学习方法-第二类型应用

VTK的高级使用方法是自己写一个算法&#xff08;Filter&#xff09;&#xff0c;本文使用的数据类型位polydata&#xff0c;这个数据类型应用比较广泛。 我们的算法一般是继承VTK里面的vtkpolydataalgorithm&#xff0c;然后自己添加一些变量&#xff0c;重写&#xff08;over…

京东 北京 java 中级: 哪些情况下的对象会被垃圾回收机制处理掉? 哪些对象可以被看做是 GC Roots 呢?对象不可达,一定会被垃圾收集器回收么?

我同学最近在面试java的岗位, 这是他遇到的某些关于java的JVM中垃圾回收相关的部分的问题, 他来问我, 我特以此文章来解答. 公司 京东 base 北京 面试时间 2024年10月23日16:00:00 他跟我说, 面试官一上来就问了一个关于JVM的问题, 直接就给他难住了, 问题是 : 哪些情况下…