VCPKG 跨平台C++ 库管理器

VCPKG 适用于 Windows、Linux 和 MacOS 的 C++库管理工具,有一些常用的库,没必要自己手动一次次编译,太麻烦,直接用此工具安装即可。

VCPKG 安装

此工具安装地址

复制代码
https://github.com/microsoft/vcpkg

下载即可

复制代码
git clone https://github.com/microsoft/vcpkg

执行如下命令

复制代码
.\bootstrap-vcpkg.bat

显示执行完毕,可以看到执行这个命令的目的就是下载 vcpkg.exe这个文件。

配置为默认命令

添加到系统路径下

然后,就可以直接在命令行里使用此命令了

默认搜索

vcpkg search redis 就可以看到所有库

VCPKG 命令

具体可以参考这个地址

复制代码
https://learn.microsoft.com/zh-cn/vcpkg/commands/add
命令 功能描述
vcpkg search [pkg] 搜索可用库
vcpkg install [pkg] 安装库
vcpkg install [pkg]:x64-windows 安装特定版本
vcpkg remove [pkg] 卸载库
vcpkg remove --outdated 卸载所有不在使用库
vcpkg list 列出已安装包
vcpkg update 检查可更新库
vcpkg upgrade 升级所有库
vcpkg integrate install 全局集成到 Visual Studio
vcpkg integrate remove 取消全局集成

结合VS2022开发

默认环境设置

先执行 vcpkg integrate install命令,集成到VS环境

创建个项目

还是 boost项目,我们先用 vcpkg search boost命令查询有什么包可以安装

查看还是有包可以安装的

直接执行以下命令

复制代码
vcpkg install boost

然后,就如图

会一直安装和下载各种包。

第一次下载还是要一些时间的。

而且,实际上里面包含了很多东西,所以,文件也会大一些。

新增项目

复制代码
#include <boost/thread.hpp>
#include <iostream>

void task1() {
    for (int i = 0; i < 5; ++i) {
        std::cout << "Task1: " << i << std::endl;
        boost::this_thread::sleep(boost::posix_time::milliseconds(200));
    }
}

void task2(int n) {
    for (int i = 0; i < n; ++i) {
        std::cout << "Task2: " << i << std::endl;
        boost::this_thread::sleep(boost::posix_time::milliseconds(300));
    }
}

int main() {
    // 创建线程
    boost::thread t1(task1);
    boost::thread t2(task2, 5);

    // 等待线程结束
    t1.join();
    t2.join();

    std::cout << "所有线程完成!" << std::endl;
    return 0;
}

可以看到,现在已经不需要引用头文件和lib库了,它自己就会引用了。

相关推荐
鱼子星_2 分钟前
【C++】stack和queue的应用及其模拟实现:适配器与容器适配器
数据结构·c++·笔记·stl
jufeng130717 分钟前
【系列:MiniKV 原理剖析 · 第 2 篇】
linux·c++·软件工程
charlie1145141911 小时前
IMX6ULL WM8960 的移植——前置介绍
开发语言·c++·开源项目·嵌入式linux
charlie1145141911 小时前
Cinux是如何管理进程的 —— 上下文与调度
开发语言·c++·操作系统·开源项目
hold?fish:palm2 小时前
redis中AOF 重写机制解析
数据库·c++·redis
阿米亚波2 小时前
【C++ 异常处理】try-catch
开发语言·c++·笔记·try-catch
旖旎夜光2 小时前
C++(内存管理)
开发语言·c++·学习
皓月斯语2 小时前
P2858 [USACO06FEB] Treats for the Cows G/S
数据结构·c++·算法·动态规划
旖旎夜光2 小时前
LeetCode 397:整数替换(贪心问题) —— 题解
数据结构·c++·算法·leetcode·贪心算法
依然鸣2 小时前
PTA团体程序设计天梯赛L2真题讲解L2-037-040
c++·经验分享·学习·算法·蓝桥杯·深度优先·pat考试