request-free-img

C++程序员最羡慕的工具来了!VCPKG 让依赖管理像 Java/Python 一样丝滑

要说 C++ 程序最羡慕 Java、Python 程序员什么,那一定是他们方便的包管理工具。不过其实你也不用羡慕,C++ 其实也有。

什么是 VCPKG?

今天这个视频就要给你介绍这个 C++ 的依赖库管理工具 VCPKG。

vcpkg 是由微软开发的跨平台开源 C/C++ 包管理器,目的就是为简化 Windows、Linux 和 macOS 上 C++ 开发的第三方库管理和集成。通过 vcpkg,开发者可以方便地下载、安装和管理 C/C++ 库,并将其无缝集成到项目中。

目前为止 vcpkg 已经支持 2300 多个开源依赖库。基本上你网上的开源库都能通过 VCPKG 进行安装。

安装 VCPKG

首先克隆 vcpkg 仓库,咱们在命令行中执行以下命令将 vcpkg 的官方仓库克隆下来:

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

然后执行它的 bootstrap 脚本,在 Windows 下是执行 bootstrap-vcpkg.bat,在 mac 和 Linux 下是执行 bootstrap-vcpkg.sh。

脚本程序会将 VCPKG.EXE 下载到本地,这样就算完成了安装。

配置环境变量

接着设置一下环境变量,在环境变量中添加 VCPKG_ROOT 指定 vcpkg 所在目录,同时把它添加到 PATH 环境变量中。

完成之后,我们就一起来使用它。

常用命令详解

1. 搜索库

首先是搜索某个库,可以执行:

./vcpkg search jsoncpp

如果找到,会列出所有匹配的库,第一列是名称,第二列是版本号,第三列是介绍信息。

2. 安装库

然后我们执行以下指令进行安装:

./vcpkg install jsoncpp:x64-windows

VCPKG 会自动下载 CMake 进行编译,同时如果它发现你所安装的库还依赖其他的库也会一并下载并编译。

3. Triplet 说明

这里需要注意的是,冒号后边这个 x64-windows 叫做 Triplet。这里的 x64 表示 64 位,如果你想安装 32 位的包那么这里改成 x86,后边的 windows 是系统平台。它还支持 linux、osx、android、ios。

默认情况下它会自动编译安装动态库,如果你需要静态库,那么就在后边加上 static。例如,我们想安装 64 位 Windows 系统的静态库就指定 triplet 为:x64-windows-static。

4. 查看已安装库

如果你想列出你的电脑上已经安装的库,就执行:

./vcpkg list

5. 删除库

如果你想删除一个已经安装的库,例如我们将刚才安装的 jsoncpp 删除,就执行:

./vcpkg remove jsoncpp

6. 更新库

如果所安装的依赖库有新的版本了,可以执行:

./vcpkg update

与 Visual Studio 完美集成

并且 VCPKG 还可以轻松的实现与 VS 进行整合,你只需要执行:

./vcpkg integrate install

集成之后就可以直接在 VS 中的项目中使用 #include 引入依赖库的头文件了,而所需要的库文件则自动会被引入。所安装的依赖库了,是不是很方便?

在 CMake 项目中使用

如果是 CMAKE 的项目,也可以在你的 CMAKE 项目中指定工具链来使用 VCPKG 安装的依赖库:

-DCMAKE_TOOLCHAIN_FILE=/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake

总结

怎么样,你现在还会抱怨 C++ 开发中要自己去配置编译所需要的依赖库太麻烦吗?

欢迎点赞、收藏、转发给需要的朋友! 后续会继续分享更多 C++ 开发实用工具和技巧,敬请关注。


更多问题探讨,请关注公众号:程序员角