关于vs2022如何集成vcpkg来进行c++开发
vcpkg是微软在github上发布的一个c++的包管理平台,这篇文章主要介绍vcpkg如何在vs集成使用,这个方法非常方便,不用频繁拉取编译后,再拷贝库路径到vs工程中,也不用在vs中配置库路径。
首先你的电脑上需要有Git,不然vcpkg都无法拉取,Git的官网:Git (git-scm.com)。
下载安全完Git后,打开cmd命令行。
使用cd命令选择你想要把vcpkg存在那个路径下,比如我存在桌面
使用命令拉取vcpkg: git clone https://github.com/microsoft/vcpkg
拉取可能失败,如果拉取失败就打开vpn,还是不行vpn就开全局模式,如果再不行就在命令行中使用set命令手动设置代理:
如下,具体代理ip和端口看你使用的vpn:
set https_proxy=http://127.0.0.1:33210
set http_proxy=http://127.0.0.1:33210
set all_proxy=socks5://127.0.0.1:33211
拉取完毕后调用cd vcpkg命令进入刚拉取的文件夹:
然后调用bootstrap-vcpkg命令
最后调用vcpkg integrate install命令,调用完这个命令后vs就会使用这目录下的vcpkg了
打开vs,创建任意c++项目,右键你的工程文件->属性
点击vcpkg页面,将Use Vcpkg Manifest改成是。注意如果vcpkg这个页面不存在代表你上面的步骤没有完成或者有问题。
改完后编译会报错
这个时候需要在工程文件下手动添加一个vcpkg.json文件
在这个文件中添加一下基础内容:
{ "name": "versions-test", "version": "1.0.0", "dependencies": [ ] }
这个时候你在编译代码就正常了,等待一段时间,vcpkg会下载一些基础的库。
现在我们就能轻松添加我们的库了,比如我添加了nlohmann-json和nameof库,编译一下就会自动下载编译并关联这个库。编译失败就打开vpn。
测试下库能不能用
#include <iostream> #include "nameof.hpp" struct TestVcpkg { int a; int b; }; int main() { std::cout << "类名:" << nameof::nameof_short_type<TestVcpkg>(); std::cout << "类成员:" << nameof::nameof_member<&TestVcpkg::a>(); }
运行结果均正常
这个工具还能挺多其他功能的,以后研究出来了再继续写文档吧。