Vcpkg 的安装与使用

简介: Windows 下 Vcpkg 的安装与使用

欢迎大家来我的博客逛逛👏:hauhau.cn

vs install

需求

先确保你已经安装了:

  • Windows7 及以上的版本
  • Git
  • Visual Studio 2015 Update 3 及以上的版本

关于美化 Windows Terminal 及 Powershell,可以查看这篇优秀文章: Windows-Terminal 美化以及通过 OhMyPosh 美化 PowerShell

为 Visual Studio 安装英文语言包

vcpkg 需要 Visual Studio 安装了英文语言包,安装步骤如下:

  • 打开 Visual Studio Installer,然后点击修改

vi

  • 然后点击语言包,勾选英语并确认修改,等待安装完成即可

english

安装 Vcpkg

先克隆 vcpkg,目录任意位置都可,我克隆到 D:\Library 下,这样做包管理会很方便

clone vcpkg

然后进入到 vcpkg 目录,执行安装脚本 bootstrap-vcpkg.bat

  • cd vcpkg
  • .\bootstrap-vcpkg.bat

或者直接执行:.\vcpkg\bootstrap-vcpkg.bat

bat

安装包

在 vcpkg 目录下,执行 .\vcpkg.exe search 包名称 可以搜索你需要安装的包的信息

下面以搜索 openssl 为例:.\vcpkg.exe search openssl

search openssl

确认有你需要安装的包之后,通过 .\vcpkg.exe install 包名称 即可安装包

下面还是以安装 openssl 为例:.\vcpkg.exe install openssl,第一次安装 vcpkg 会先安装 cmake、git 等依赖,同时安装包还需要编译,需要耐心等待

install openssl

指定安装架构

vcpkg 默认安装的是 x86-windwows 架构的包,当我们需要指定安装 x64 或者是静态库的时候,需要在包名后面跟上具体安装方式。以安装 libevent 为例:使用.\vcpkg.exe install libevent:x64-windows libevent:x64-windows-static,安装的是 x64 版本的 libevent 和 x64 版本的 libevent 静态库

通过 .\vcpkg.exe help triplets 可以查看支持的安装方式

arch

查看已安装的包

使用.\vcpkg.exe list 可以列举已经安装的包

libevent、openssl、opencv、protobuf、grpc、jsoncpp、nlohmann-json 都是比较一些比较常用的包,有需要的可以安装

list

集成 Visual Studio

要在 Visual Studio 中使用 Vcpkg,需要输入:.\vcpkg.exe integrate install (首次执行需要在管理员权限下执行,就是使用管理员权限打开 powershell)

vs install

CMake 项目中使用 vcpkg

cmake 项目建议通过以下方式使用 vcpkg (不要全局导入 vcpkg,别人不知道你在做什么)

通过指定 cmake 工具链实现将 vcpkg 作为一个自模块加入到你的 CMake 工程中,需要注意的是,使用 Mingw 需要额外的设置。下面是 CMakeList 的模版,添加到你的工程就可以使用了。

if (CMAKE_SYSTEM_NAME MATCHES "Windows")
    # setting vcpkg toolchain file
    set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake
            CACHE STRING "Vcpkg toolchain file")

    if (MINGW)  # if mingw
        # setting vcpkg
        if (DEFINED ENV{VCPKG_DEFAULT_TRIPLET} AND NOT DEFINED VCPKG_TARGET_TRIPLET)
            set(VCPKG_TARGET_TRIPLET "$ENV{VCPKG_DEFAULT_TRIPLET}" CACHE STRING "")
        endif ()
    endif ()
endif ()

自动补全

.\vcpkg integrate powershell 即可开启 tab 补全

Tab

目录
相关文章
|
1月前
|
Apache Windows
MapServer安装
MapServer安装
48 1
|
10月前
|
NoSQL 网络安全 Redis
redisd的简易安装运用
redisd的简易安装运用
54 0
|
定位技术
|
NoSQL MongoDB
Robomongo 的安装
Robomongo 的安装
114 0
Robomongo 的安装
bcftools安装
bcftools安装
756 0
bcftools安装
|
算法 Ubuntu Linux
fsarchiver安装及使用
fsarchiver安装及使用
582 0
|
Ubuntu Linux
5分钟快速安装Syncthing
简介 Syncthing是一个开源免费的文件夹/文件同步神器,支持Android、Linux、Windows、Mac OS X等系统,可以使我们在2台任何系统任何设备之间,实现文件实时同步,很强大。而且数据很安全,不会存储在你的设备以外的其他地方。
4888 0