vcpkg的使用及一些问题
在写games101的作业时,不想用虚拟机,要自己配置环境,需要装eigen3、opencv两个库。
得知有vcpkg这么个好东西,就想着试试。
1、下载vcpkg:
https://github.com/microsoft/vcpkg
2、编译vcpkg:
用powershell编译bootstrap-vcpkg.bat
./bootstrap-vcpkg.bat
完成后可以执行下面的命令看是否安装好
\vcpkg.exe list
下面的命令可以看都有哪些库可以安装
\vcpkg.exe search
3、针对不同的IDE配置vcpkg环境
配置环境
4、安装库
.\vcpkg.exe install eigen3:x64-windows
.\vcpkg.exe integrate install //集成到全局
vcpkg的使用可以参考VCPKG的使用
5、可能会出现的一些问题
问题1:
vcpkg was unable to detect the active compiler's information. See above for the CMake failure output
解决方法:打开vcpkg/scripts/buildsystems/vcpkg.cmake这个文件在第24行添加两行代码
SET (CMAKE_C_COMPILER_WORKS 1)
SET (CMAKE_CXX_COMPILER_WORKS 1)
问题2:
可能会出现网络的问题,如果不能科学上网,下载会很慢甚至失败。可以找到这样的链接,自行下载后放到\vcpkg-master\downloads\目录下(务必要改为\vcpkg-master\downloads\temp同名,同文件夹配置!)。
问题3:用powershell安装库可能会出现没有配置好powershell的问题,这个我也没有解决,直接改用cmd了。
问题4:算是个小插曲,安装好eigen3后,要在vs中再进行设置。
vs中的解决方案平台一定要设置:
项目 -> 属性 -> C/C++ -> 语音 -> C++语言标准:选择c++17。
因为代码中有使用std::optional这个特性,这个特性是c++17中才有的,这个坑反应了好久才找到原因。
改完之后发现使用默认的x86设置,std::optional依然会报错,所以选了x64之后,环境就彻底配好了。所以对应的库也要安装64位的。
总结
在安装时,如果出现错误,要根据cmd的提示看错误日志,排查错误。而且可能要对下载的库进行相应的设置。
所以可见vcpkg还是不能一劳永逸的,不过已经方便许多了。
更多推荐
所有评论(0)