赞
踩
vcpkg配合vs的编译套件使用!!!,使用mingw特别出错!!!,还是老老实实使用msvc编译吧,以下都是基于msvc,
可以通过左侧栏添加,也可以双击shift
搜索vcpkg添加
注意:add vcpkg integration to existing profiles
要勾选上,不然项目使用不了
通过以上步骤,它就会从GitHub上面下载vcpkg,这里看个人网络问题,可能会失败,如果网络不好的话,就会下载失败(主要它是下一半才失败,太搞心态了,受不了一点,我都不知道下了几次,家人们谁懂啊),如果好的话一下子就好了。
同时,通过以上步骤,他还会在cmake上面添加一个脚本,用于在运行前安装和编译库
vcpkg
一个有两种模式,一种是经典模式
,另一种是清单模式
,通过清单模式,我们可以在运行时使用当前项目的编译器编译库文件,这样就不会存在什么编译器差异,系统差异什么的,而经典模式就会出现差异的问题,所有推荐使用清单模式。
如果之前有下载过别的库,可以选择添加的库,选择的这些库将放到一个json文件中,这里我什么都不添加,直接点确定
如果不出意外,那就好显示成功,但凡是就有例外,还总让我碰到,难搞…(如果你创建的vcpkg是直接再终端上使用git clone …拉取创建的就会出现问题,如第二张图,解决办法是直接再clion上按我前面的步骤创建一个新的vcpkg,不要使用终端上面创建的)
二:添加库 (这里以lunasvg
库为例)
搜索lunasvg库,然后点击add to vcpkg.json
,就会自动添加到json文件了
这样就成功了,但是你会发现,他没有没你使用方法!!!,也是我一顿乱摁才发现解决方法的(其实还有一直方法,就是在终端中再安装一边库,就能看见使用方法了)
点击cmake
,再点击add event tracing cmake options
,就出来了
将这两行代码添加到cmakelists.txt中,注意更改项目名字,这里的项目名字默认为main
然后重新加载cmakelist
文件,这时你会发现,还是报错,惊不惊喜,意不意外!!!
解决方案时将原来的build不了删除,再重新加载cmakelist文件,这样就解决了
这样就能使用了!!!
(这个就简单很多了,但他没有图像化界面,需要在终端上安装)
我建议是将clion的vcpkg和vs的vcpkg分开,其一是,我发现使用list命令查看安装的库时,找不到clion上面安装的库,明明在clion的vcpkg文件夹中就是存在安装的库,就是找不到,其二就是好管理(我乱说的,不知道有没有这个原因,但占的内存肯定是比只是要一个clon的vcpkg要多的)
在你使用终端使用 install 安装某个库时
使用vcpkg integrate install后可以全局到vs2022,vs2022可以直接使用 ,如果不使用vcpkg
integrate install,需要在项目属性中添加包含目录和库目录, 或者使用vcpkg integrate
project,这样可以在单个项目中使用vcpkg,否者使用不了
步骤一:点击
项目
,选择项目属性
,选择vcpkg
,将use vcpkg Manifest
改为是
步骤二:创建一个名为
vcpkg.json
的文件,以下是一个模板特别注意,项目名字一定要小写,不然就会报错如下图
{
"name": "testvcpkg",
"version-string": "0.1.0",
"dependencies": [
"nlohmann-json",
"fmt",
"lunasvg",
"sqlite3",
"boost"
]
}
改成小写以后,难搞,翻车了,此文结束!
家人们,谁懂啊,写个注释都不行,不要出现中文了!!!有时间立马学个json,难受
步骤三: 执行
.\vcpkg.exe integrate install
设置全局到vs2022,这是vs2022会自动识别vcpkg.json文件,如果执行这条命令,你懂的,找不到头文件,不要问我怎么知道的…
步骤四: 生成解决方案,vs就会自动下载所需要的依赖了,就能正常使用头文件了
添加VCPKG_DEFAULT_TRIPLET
以后,就不需要在库名字的后面添加:x64-windows了,直接vcpkg install 库名
,如:vcpkg install lunasvg
vcpkg.exe
的环境变量
这样就可以使用powershell随时添加库了,不需要再使用.\vcpkg.exe,直接vcpkg install xxx
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。