【vcpkg】使用vcpkg安装库
https://blog.csdn.net/cjmqas/article/details/79282847
使用vcpkg
查看vcpkg支持的开源库列表
执行命令
.\vcpkg.exe search
安装一个开源库
这里的“安装”其实是指下载和编译。
比如我们需要安装常用的jsoncpp库,那么执行命令
.\vcpkg.exe install jsoncpp
我们大致可以了解到install会经历这几个过程:
- 环境初始化
- 下载源代码(如果已经在cache中,则不下载)
- 校验文件有效性
- 解压缩源代码
- 利用配套工具配置源码工程,在这里是使用的是cmake(如果是ffmpeg,则用msys2)
- 编译源码。一般会同时编译Release和Debug版本。
- 把编译好的文件拷贝到相关目录中去(一般是installed目录)
移除已经安装(编译)的开源库
如果移除一个已经安装的开源库,那么执行remove指令即可。比如我们要移除jsoncpp,那么执行命令:
.\vcpkg.exe remove jsoncpp
注意:
这个时候只是移除了默认的x86-winodws版本的文件,如果有其他平台的版本需要移除,需要制定相应的triplet。
移除也只是移除了二进制程序库而已,源码包和解压缩的源码并没有删除。
导出已经安装的开源库
有的时候,一个项目组中有很多人,不需要每个人都参与编译。一个人编译好所有开源库后到处给别人即可。有的时候也是出于备份的目的,也会导出已经安装的开源库。导出可以执行export指令。例如,我要导出jsoncpp库,那么执行:
.\vcpkg.exe export jsoncpp --7zip
导入备份的开源库
导入比较简单,执行import指令即可。例如:
.\vcpkg.exe import xxx.7z
vcpkg和Visual Studio的集成
集成到全局
“集成到全局”适用于Visual Studio开发环境和msbuild命令行。执行命令:
.\vcpkg integrate install
当出现“Applied user-wide integration for this vcpkg root.”字样的时候,说明已经集成成功。这时候可以在任意的工程中使用安装好的第三方库。
移除全局集成
.\vcpkg integrate remove
集成到工程
- 执行命令
.\vcpkg integrate project
这时候会在“<vcpkg_dir>\scripts\buildsystems”目录下,生成nuget配置文件.
其中<vcpkg_dir>是指vcpkg实际所在目录。