vcpkg常用

2025-09-03 16:13:09

vcpkg常用

vcpkg c++包管理器

在Windows下开发C++程序时,常用依赖包的管理是一个头疼的问题。Vcpkg是一个命令行包管理工具,它可以极大地简化三方库的获取、安装、使用和部署流程。

相关网址

知乎博文1GitHub库源搜索

windows安装vcpkg

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

.\vcpkg\bootstrap-vcpkg.bat

Linux安装vcpkg

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

./vcpkg/bootstrap-vcpkg.sh

// ps:记得需要先安装 curl zip unzip tar包

常用指令

vcpkg list // 查看本地已安装包列表

vcpkg install [package name] // 安装包,安装32位

vcpkg install [package name]:x64-windows // 安装包,安装64位

vcpkg search [package name] // 根据片段搜索包

vcpkg remove [package name] // 卸载包

vcpkg integrate install // 使已安装包在用户范围内可用。 首次使用时需要管理权限

vcpkg integrate remove // 删除用户范围的集成

使用方式 官方推荐我们将vcpkg作为项目的子模块进行引入,即在项目的目录下进行安装项目本地的vcpkg包。

├── CMakeLists.txt

├── main.cxx

└── vcpkg // vcpkg本地子模块项目

在cmake中使用vckpg的包

cmake_minimum_required(VERSION 3.5)

# 要在开头project之前设置CMAKE_TOOLCHAIN_FILE这样就能够使用vcpkg的包

set(CMAKE_TOOLCHAIN_FILE "D:/vcpkg/scripts/buildsystems/vcpkg.cmake"

CACHE STRING "Vcpkg toolchain file")

project(cmake_vcpkg LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)

set(CMAKE_CXX_STANDARD_REQUIRED ON)

find_package(Drogon CONFIG REQUIRED)

add_executable(cmake_vcpkg main.cpp)

install(TARGETS cmake_vcpkg LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})

target_link_libraries(${PROJECT_NAME} PRIVATE Drogon::Drogon)

国内安装GitHub工具库时,因为墙的原因许多库都很容易安装失败。安装失败就多安装几次,不行就开个VPN进行安装把。

当然在很多时候按照上面的设置光是配置CMAKE_TOOLCHAIN_FILE变量会发现查找不到正确的包,在这个时候我们需要手动引入vcpkg.cmake进行包含。

cmake_minimum_required(VERSION 3.5)

set(CMAKE_CXX_STANDARD 17)

# 设置工具链

set(CMAKE_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake" CACHE STRING "Vcpkg toolchain file")

# 手动加入vcpkg.cmake 子模块

include(${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake)

find_package(Drogon CONFIG REQUIRED)

project(web LANGUAGES CXX)

add_executable(${PROJECT_NAME} main.cxx)

target_link_libraries(${PROJECT_NAME} PRIVATE Drogon::Drogon)

最新发表
友情链接

Copyright © 2022 日本世界杯_林高远世界杯 - edenyn.com All Rights Reserved.