vcpkg下载及安装

2023-12-13 21:44
文章标签 安装 下载 vcpkg

本文主要是介绍vcpkg下载及安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • vcpkg是什么
  • vcpkg的优势
  • Windows环境下的下载及安装
    • 1.下载
  • Linux环境下的下载及安装
  • 常用命令介绍
    • 1.1.1 设置默认安装的平台
    • 1.1.2可选步骤,将vcpkg与Visual Studio配合使用(需要管理员权限)
    • 1.1.3 软件包升级
    • 1.1.4 查找安装软件包
    • 1.1.5 安装软件包
    • 1.1.6 移除软件包
    • 1.1.7 列出已安装的软件包
    • 1.1.8 集成到CMake
    • 1.1.9 为vcpkg瘦身
    • 1.1.9 其它
      • 1.1.9.1 windows
      • 1.1.9.2 linux

vcpkg是什么

vcpkg是微软 C++ 团队开发的适用于 C 和 C++ 库的跨平台开源软件包管理器,它大大简化了 Windows、Linux 和 macOS 上第三方库相关的下载和配置操作,目前已有超过1600个第三方库可以通过vcpkg来安装。类似于 apt-get、npm 、yum 等的命令功能。

vcpkg的优势

1.自动下载三方开源库源代码。
2.一键安装第三方库。
3.源码包的缓存管理和版本管理,可以依需求安装指定的版本。
4.自动检查库的依赖关系并安装其依赖项。
5.无缝集成Visual Studio,不用手动设置任何的库相关的路径。
6.Visual Studio全平台支持,不仅支持Debug/Release、x86/x64编译,还支持UWP、ARM平台的编译。

Windows环境下的下载及安装

1.下载

	dos命令窗口下进入 D:\software目录D:\software>git clone https://github.com/microsoft/vcpkg  待克隆下载完毕后,会在software目录下生成一个vcpkg目录。D:\software>.\vcpkg\bootstrap-vcpkg.bat

此时有可能会报下面这个问题: 在这里插入图片描述
根据提示应该就是连接不到指定github服务器(这个是国外的服务器)。其实里面就是一个从远端下载vcpkg.exe的文件的操作。可以手动通过其他方式把它下载下来。然后放到D:\software\vcpkg根目录下。
我这里采用的是:通过华为云服务器(访问国外的网效果好些)来下载:
[root@iZ2zedddZ software]# wget https://github.com/microsoft/vcpkg-tool/releases/download/2023-12-12/vcpkg.exe
回车完后,等待下载完毕!会在当前目录下有一个vcpkg.exe文件
[root@iZ2zeddfx87fw4m4dlxu8dZ software]# ll -h
total 7.8M
-rw-r–r-- 1 root root 7.8M Dec 13 03:39 vcpkg.exe
将这个vcpkg.exe文件拷贝到Windows机器上下的,D:\software\vcpkg根目录下(上面有说明)。
配置系统环境变量:将D:\software\vcpkg添加到PATH环境变量下。
在这里插入图片描述
任意一个目录下:执行 vcpkg --version,如果打印有版本信息说明系统环境变量已配好。
在这里插入图片描述

Linux环境下的下载及安装

和上面差不多,就是执行脚本:.\vcpkg\bootstrap-vcpkg.bat 改为 .\vcpkg\bootstrap-vcpkg.sh。

常用命令介绍

1.1.1 设置默认安装的平台

–triplet=x64-windows表示仅在windows上安装64位软件包

vcpkg help triplet #查看软件包支持的平台

现代软件基本上64位编译的,为节约磁盘空间,可以为–triplet设置系统环境变量“VCPKG_DEFAULT_TRIPLET=x64-windows”,表示默认安装在windows上安装64位软件包。

1.1.2可选步骤,将vcpkg与Visual Studio配合使用(需要管理员权限)

vcpkg integrate install #安装至Visual Studio
vcpkg integrate remove  #从Visual Studio卸载

1.1.3 软件包升级

cd D:\software\vcpkg
git pull
vcpkg update
vcpkg upgrade --no-dry-run

1.1.4 查找安装软件包

vcpkg search PackageName

1.1.5 安装软件包

vcpkg install PackageName  --triplet=x64-windows#如果你设置了VCPKG_DEFAULT_TRIPLET系统环境变量则
vcpkg install PackageName

1.1.6 移除软件包

vcpkg remove PackageName

移除所有过时的软件包

vcpkg remove --outdated

1.1.7 列出已安装的软件包

vcpkg list

1.1.8 集成到CMake

在cmake后添加CMAKE_TOOLCHAIN_FILE变量,值为vcpkg.cmake完整路径

cmake -DCMAKE_TOOLCHAIN_FILE=D:\software\vcpkg\scripts\buildsystems\vcpkg.cmake -Wno-dev
#-Wno-dev:【可选】抑制开发人员警告。 禁止对CMakeLists.txt文件的作者发出警告。

1.1.9 为vcpkg瘦身

当你使用了段时间后,vcpkg占用了非常大的磁盘空间,这时您可以通过删除packages、buildtrees和downloads文件夹来节省一些磁盘空间。

rmdir /S /Q D:\software\vcpkg\packages
rmdir /S /Q D:\software\vcpkg\buildtrees
rmdir /S /Q D:\software\vcpkg\downloads

vcpkg目录说明

buildtrees: 【允许删除】编译软件包使用的目录
docs:       【不能修改删除】文档和示例
downloads:  【允许删除】所有已下载的工具或源的缓存副本。 运行安装命令时,vcpkg 会首先搜索此处,如果没有会自动下载
installed:  软件包编译后的安装目录,头文件(h/hpp)、库文件(lib/so/a)、二进制文件(dll/exe)。集成Visual Studio后,vs会自动链接到此目录,你只需要引用头文件即可。vs自动引用库文件(编译后vs会自动将库文件(dll/so/a)复制项目运行目录)。
installed\x64-windows\debug:表示此目录中的库文件(lib/so/a)、二进制文件(dll/exe)都是debug模式
installed\x64-windows\lib\manual-link:表示此目录中的库文件(lib/so/a)不会自动引用,需要你在项目中手动设置
packages:   【允许删除】在不同的软件包之间用于暂存的内部文件夹
ports:      【不能修改删除】用于描述每个库的目录、版本和下载位置的文件。 如有需要,可添加自己的端口
scripts:    【不能修改删除】由 vcpkg 使用的脚本(CMake、PowerShell)
toolsrc:    【不能修改删除】vcpkg和相关组件的 C++ 源代码
triplets:   【不能修改删除】包含每个受支持目标平台(如 x86-windows 或 x64-uwp)的设置
*.*         其它文件都不允许手动修改

1.1.9 其它

因为vcpkg太过于自动化了,当开发完成后我们可能不知道使用项目依赖的软件包,我们可以通过下列命令查看:

1.1.9.1 windows

从开始菜单输入 ”x64 Native Tools Command Prompt for VS 2019”中运行(前提是已安装 Visual Studio 2019)

dumpbin /DEPENDENTS PackageName.dll
或者
dumpbin /DEPENDENTS PackageName.exe

演示:
在这里插入图片描述
双击打开上述应用
在这里插入图片描述
如下:使用Windows上的dumpbin 命令不能用于.so库文件上。
在这里插入图片描述

1.1.9.2 linux

ldd PackageName.so
ldd PackageName.a
ldd PackageName

演示

[root@iZ2zeddu8dZ local]# ldd libSignServerExJNI.solinux-vdso.so.1 =>  (0x00007fff343ee000)libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f81e9942000)libm.so.6 => /lib64/libm.so.6 (0x00007f81e9640000)libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f81e942a000)libc.so.6 => /lib64/libc.so.6 (0x00007f81e905c000)/lib64/ld-linux-x86-64.so.2 (0x00007f81ea14a000)
[root@iZ2zeddu8dZ local]# ldd SignServerExJNI.dll not a dynamic executable #说明ldd命令不能用在dll文件上

这篇关于vcpkg下载及安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/490082

相关文章

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

2025版mysql8.0.41 winx64 手动安装详细教程

《2025版mysql8.0.41winx64手动安装详细教程》本文指导Windows系统下MySQL安装配置,包含解压、设置环境变量、my.ini配置、初始化密码获取、服务安装与手动启动等步骤,... 目录一、下载安装包二、配置环境变量三、安装配置四、启动 mysql 服务,修改密码一、下载安装包安装地

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

在macOS上安装jenv管理JDK版本的详细步骤

《在macOS上安装jenv管理JDK版本的详细步骤》jEnv是一个命令行工具,正如它的官网所宣称的那样,它是来让你忘记怎么配置JAVA_HOME环境变量的神队友,:本文主要介绍在macOS上安装... 目录前言安装 jenv添加 JDK 版本到 jenv切换 JDK 版本总结前言China编程在开发 Java

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

虚拟机Centos7安装MySQL数据库实践

《虚拟机Centos7安装MySQL数据库实践》用户分享在虚拟机安装MySQL的全过程及常见问题解决方案,包括处理GPG密钥、修改密码策略、配置远程访问权限及防火墙设置,最终通过关闭防火墙和停止Net... 目录安装mysql数据库下载wget命令下载MySQL安装包安装MySQL安装MySQL服务安装完成

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完