首先介绍vcpkg的安装与使用方法,接着说明Conan的功能优势。通过git克隆vcpkg仓库并运行引导脚本完成初始化,支持跨平台库管理与CMake集成。

在现代C++开发中,手动管理第三方库既耗时又容易出错。使用包管理工具能显著提升开发效率。vcpkg和Conan是目前最主流的C++包管理工具,支持跨平台、自动化下载、编译和集成。下面介绍如何使用vcpkg与Conan来管理C++项目中的第三方库。
使用 vcpkg 管理第三方库
vcpkg 是由微软开发并维护的开源C++库管理工具,支持Windows、Linux和macOS,提供大量预编译库,集成Visual Studio和CMake非常方便。
1. 安装 vcpkg
打开终端或命令行,执行以下命令:
立即学习“C++免费学习笔记(深入)”;
- 克隆仓库:git clone https://github.com/microsoft/vcpkg
- 进入目录并运行引导脚本:
cd vcpkg
./bootstrap-vcpkg.sh(Linux/macOS)
2. 安装第三方库
例如安装 fmt 库:
./vcpkg install fmt如需指定平台(如静态链接),可加 triplet:
./vcpkg install fmt:x64-windows-static3. 集成到 CMake 项目
在 CMake 项目中使用 vcpkg,只需在 cmake 命令中添加工具链文件:
cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=vcpkg/scripts/buildsystems/vcpkg.cmake之后在 CMakeLists.txt 中正常 find_package 即可:
find_package(fmt REQUIRED)target_link_libraries(your_target PRIVATE fmt::fmt)
4. 全局集成(可选)
运行 vcpkg integrate install 可让 Visual Studio 或其他 IDE 自动识别已安装的库。
使用 Conan 管理第三方库
Conan 是一个去中心化的C++包管理器,灵活性高,适合复杂项目和私有库发布。它不依赖特定平台,通过 Python 实现,配置方式更灵活。
1. 安装 Conan
确保已安装 Python 和 pip,然后执行:
pip install conan首次运行会生成默认配置。推荐使用 Conan 2.x 版本(当前最新稳定版)。
2. 创建 Conan 配置文件
在项目根目录创建 conanfile.txt 或使用 conanfile.py:
[requires]fmt/10.0.0
nlohmann_json/3.11.2
[generators]
CMakeToolchain
CMakeDeps
3. 安装依赖
在项目目录中运行:
conan install . --output-folder=build --build=missing --settings=arch=x86_64 --settings=build_type=Release该命令会下载依赖,并生成 CMake 所需的配置文件(如 conan.cmake, xxx-config.cmake)。
4. 配合 CMake 使用
修改 CMakeLists.txt,加载 Conan 生成的配置:
include(${CMAKE_BINARY_DIR}/conan.cmake)# 或自动加载依赖
find_package(fmt REQUIRED)
target_link_libraries(your_target PRIVATE fmt::fmt)
也可以使用 CMakeDeps 生成器自动处理依赖关系。
对比与选择建议
两者各有优势,可根据项目需求选择:
- vcpkg:适合快速上手,微软官方支持,库数量多,集成简单,尤其适合 Windows + VS 用户。
- Conan:更灵活,支持私有仓库、自定义构建流程,适合团队协作或需要精细控制的项目。
小型项目或学习阶段推荐 vcpkg;大型项目、持续集成或需要私有包管理时,Conan 更合适。
基本上就这些。掌握其中一个工具,就能高效管理C++依赖,避免“头文件地狱”。











