1. 安装好vcpkg
- 下载vcpkg的githbu源文件
- 控制台运行booststrap-vckpkg.bat,则自动生成:vcpkg.exe
则vcpkg已经完成安装,通过控制台:vcpkg.exe --version则可正确安装
配置环境变量,
在path中配置:
至此,在任意的cmd命令行,就可以调用vcpkg
2. vcpkg安装库
vcpkg install zlib
解释: 完整:vcpkg install zlib:x64-windows
默认是64bit-window,
如果需要按装32位的,则必须要明确 zlib:x86-windows
查看是否存在:vcpkg list
安装位置: vcpkg目录下的installed,
ports:是所有vcpkg可以下载的库的目录,并没有被安装。
删除包:vspkg remove zlib
用户级别的集成:全局所有的包管理都可以对所有的用户级别下面的VS项目产生影响。
3. 配置“用户级别”的vs2022集成
(1) 执行下面的命令,则完成对vcpkg的安装初始化,且与vs进行关联,
表示:开启“用户级”的vs2022集成。
在:工程根目录位置,执行以下命令
vcpkg integrate install
这样,可以在VS中包含安装的目录,并且会自动linking。
(2)用VS2022创建项目。
直接在“用户级”模式下,可以显示:项目的属性配置页面中可以管理vcpk,则说明可以进行配置。
4.(或者) 项目级别的集成使用VCPKG,
就是将库的安装到“项目”就别的隔离, A项目只安装到A项目的下,对其他项目没有应i选哪个。
(1)启动vcpkg的清单选项:
启用项目的属性配置的“清单manifest”:勾选use vcpkg manifest
还需要执行(2),否则,提示vcpkg找不到清单内文件
(2)在项目目录下,创建 “清单文件“
在项目的右键菜单中,点击“控制台命令”,则切换到:项目的所在目录。注意,也可以配置在:项目对应的解决方案的目录,表示当前解决方案都共享一个vcpkg的项目库。
执行:
vcpkg new --application
则提示多了两个文件:
vcpkg.json
vcpkg-configuration.json
(3) 添加指定库的port 到清单中:
vcpkg add port zlib
则自动在vcpkg.json中添加以下内容;
其他清单管理命令
直接编辑”dependencies“下面的库的名字即可。
(4) 安装清单中的库:
vcpkg install
则自动在:vcpkg.json目录下创建项目级别的安装文件:vcpkg_installed
(5)”项目“级使用库的配置:
以上配置,只是将库安装到所在项目级别的目录位置,还需要在项目属性中配置:
- C++中配置:附加头文件位置 include的头文件位置:一般配置为:"$(SolutionDir)vcpkg_installed\x64-windows\include"
- 连接器配置:
- 常规(附加库目录)lib库位置: $(SolutionDir)vcpkg_installed\x64-windows\lib
- (附加依赖项)库名字:zlib.lib。
以上:和传统第三方库的配置方式是一致的。
在依赖:其他库,如openssl时,只需要在连接器的依赖库添加依赖库名即可,include和依赖库位置都是一样的。
最后:如果有库对应的dll,则需要将dll拷贝到:项目的exe所在的目录即可。
5. 创建项目,并检测是否配置正确
创建VS2022工程,
添加以下代码:
#include <iostream> #include <zlib.h> //#include <fmt/core.h> int main() { std::cout << ZLIB_VERSION << std::endl; std::cout << "Hello World!\n"; //fmt::print("abc"); }
输出:
说明正常安装。