若您从未使用过vcpkg或希望了解如何使用vcpkg,请查阅快速开始章节。 如需获取有关可用命令的简短描述,请在编译vcpkg后执行 vcpkg help 或执行 vcpkg help [command] 来获取具体的帮助信息。 如果vcpkg目录中没有您需要的库, 您可以 在GitHub上打开问题。 vcpkg团队和贡献者可以看到它的地方, 并可能将这个库添加到vcpkg。 \vcpkg\vcpkg install [packages to install] 您也可以使用 search 子命令来查找vcpkg中集成的库: > . /vcpkg/bootstrap-vcpkg.sh 使用以下命令安装任意包: $ .
安装vcpkg: git clone https://github.com/microsoft/vcpkg 或者手动下载随便放一个非中文或者有空格的路径下,比如我直接放D D:\vcpkg 将D:\vcpkg 之后进入vcpkg目录,双击运行bootstrap-vcpkg.bat会自动下载vcpkg.exe等文件,注意网络可能不好下,这个需要上外网解决。 将vcpkg和vs2019整合: vcpkg integrate install 查看vcpkg支持库列表: vcpkg search 安装x86的库,以jsoncpp为例 vcpkg install .其中<vcpkg_dir>是指vcpkg实际所在目录。 参考文献: Win10+VS2019安装vcpkg_win10安装vcpkg_六月的翅膀的博客-CSDN博客
vcpkg-scripts version: 0e47c19 2023-12-15 (3 days ago) To Reproduce vcpkg install librdkafka Failure /vcpkg/buildtrees/lz4/src/v1.9.4-9f4a1a30bd.clean. /vcpkg/vcpkg/buildtrees/lz4/src/v1.9.4-9f4a1a30bd.clean CMake Error at ports/lz4/portfile.cmake:11 (vcpkg_cmake_configure vcpkg: cd <vcpkg-root> git pull . \vcpkg-bootstrap.bat vcpkg upgrade --no-dry-run vcpkg install librdkafka
拉取vcpkg代码,https://github.com/Microsoft/vcpkg.git 微软官方的库。如果已经有vcpkg了,那么也建议在vcpkg目录下执行下git pull。 vcpkg目录里面执行bootstrap-vcpkg.bat生成vcpkg.exe。就算vcpkg安装好了。 编译openssl。 命令行执行vcpkg.exe list查看所有编译好的库,并使用vcpkg.exe remove来删除MD编译的库。 去vcpkg>ports目录里面找到那些MD编译的对应的库,找到portfile.cmake文件,打开并在前面加上set(VCPKG_CRT_LINKAGE static)这一行内容。 最后,其实vcpkg在windows上非常好用,许多原本需要交叉编译或者跨平台编译的库,如果vcpkg支持,都可以考虑直接用vcpkg来编译。定制编译特性大致和上面的curl差不多。
,接着,去\vcpkg\downloads\temp这个目录下面看看你要下载的依赖的文件名是什么,把你在外面下载的文件改成那个名字,然后放在\vcpkg\downloads中,重新启动vcpkg,再次执行 install命令,这时候,vcpkg就会在\vcpkg\downloads中寻找要安装的包的文件,并采用那个缓存而不是它自己重新下载一遍,这样能够快很多。 还是不懂的请看下面的图片: 第一步:去vcpkg里把下载链接复制出来,Downing后面的就是我们的下载链接 第二步:在外面用浏览器或别的下载工具下载这个文件 第三步:我们进去\vcpkg\downloads \temp这个文件夹中看看vcpkg对这个文件的命名是什么 第四步:将我们的文件也命名成这个,直接复制粘贴即可,然后放到\vcpkg\downloads\这个文件夹里 第五步:直接点击右上角关闭按钮关闭 vcpkg,重新打开,重新输入install命令即可,可以看到vcpkg已经采用了我们自己下好的包而不是它重新下一个了,这里利用的是vcpkg的缓存机制 至此,整个安装应该就很快了,然后就是愉快的安装成功啦
1. vcpkg vcpkg 是一个跨平台的 C++ 包管理工具,通过简单命令进行依赖库的搜索和下载,vcpkg具有如下的优点: 跨平台:vcpkg 支持 Windows、Linux 和 macOS 2. vcpkg 的安装 vcpkg 的安装非常简单,只需要克隆 vcpkg 仓库,然后运行安装脚本即可。 3. vcpkg 的使用 vcpkg 的使用非常简单, 搜索库:使用 vcpkg search 命令搜索库,例如: vcpkg search boost 安装库:使用 vcpkg install 命令安装库 ,例如: vcpkg install boost 卸载库:使用 vcpkg remove 命令卸载库,例如: vcpkg remove boost 更新库:使用 vcpkg update 命令更新库 ,例如: vcpkg update 清理缓存:使用 vcpkg clean 命令清理缓存,例如: vcpkg clean 如上命令,搜索、安装、卸载、更新均未指定平台,也未指定库的类型,所以vcpkg
先克隆 vcpkg,目录任意位置都可,我克隆到 D:\Library 下,这样做包管理会很方便 然后进入到 vcpkg 目录,执行安装脚本 bootstrap-vcpkg.bat cd vcpkg \bootstrap-vcpkg.bat 或者直接执行:.\vcpkg\bootstrap-vcpkg.bat 安装包 在 vcpkg 目录下,执行 . \vcpkg.exe install openssl,第一次安装 vcpkg 会先安装 cmake、git 等依赖,同时安装包还需要编译,需要耐心等待 指定安装架构 vcpkg 默认安装的是 x86- vcpkg (不要全局导入 vcpkg,别人不知道你在做什么) 通过指定 cmake 工具链实现将 vcpkg 作为一个自模块加入到你的 CMake 工程中,需要注意的是,使用 Mingw 需要额外的设置 } AND NOT DEFINED VCPKG_TARGET_TRIPLET) set(VCPKG_TARGET_TRIPLET "$ENV{VCPKG_DEFAULT_TRIPLET
\vcpkg.exe install jsoncpp:x64-windows 那么就可以使用我写的这个命令一样的编译一个合适的平台 . \vcpkg.exe remove jsoncpp 当然可以移除掉这个包 .\vcpkg.exe remove --outdated 未来要移除过时的包,就执行这个命令就好了 . \vcpkg.exe list 可以看到你已经安装过的包了 vcpkg integrate install //全局安装 vcpkg list //显示所有已安装 vcpkg search //查看支持的第三方库 vcpkg install jsoncpp:x86-windows //安装 jsoncpp 第三方库 x86 vcpkg install @dep.txt //安装文件文本,里面每一行就是一个项目名 vcpkg remove jsoncpp //移除jsoncpp vcpkg.exe help triplet //查看支持的哪些平台架构 vcpkg.exe export jsoncpp --7zip
三、vcpkg vcpkg 是一个微软开发的 C/C++ 包管理工具,用于管理和安装第三方库。它简化了第三方库的下载、编译和集成过程,支持 Windows、Linux 和 macOS。 四、三者关系 GCC 负责将源代码编译成可执行文件或库文件,它是 CMake 和 vcpkg 的基础工具;vcpkg 负责下载安装和管理第三方库,依赖于GCC来编译库文件;CMake 生成适合不同平台的构建文件 三者的协同工作示例 如:使用 GCC、CMake 和 vcpkg 构建一个依赖 Boost 库的项目 安装 vcpkg git clone https://github.com/microsoft/vcpkg cd vcpkg . /bootstrap-vcpkg.sh .
Xmake = Build backend + Project Generator + Package Manager 项目源码 官方文档 入门课程 新版本改动 这个版本主要新增下面几个特性: 通过 vcpkg 新特性介绍 支持 Vcpkg 清单模式 新版本中,Xmake 新增了 vcpkg 清单模式支持,通过它,我们就能支持 vcpkg 包的版本选择,例如: add_requires("vcpkg::zlib ") add_files("src/*.cpp") add_packages("vcpkg::zlib", "vcpkg::fmt", "vcpkg::libpng") 但是,vcpkg 例如:vcpkg::zlib, conan::pcre2 Conan xrepo_package("conan::gflags/2.2.2") Conda xrepo_package("conda:: gflags 2.2.2") Vcpkg xrepo_package("vcpkg::gflags") Homebrew xrepo_package("brew::gflags") Python
安装很简单: vcpkg install tesseract:x64-windows 或者, vcpkg install tesseract:x64-windows-static 但是会报错,主要是vcpkg 寻找的库都过期失效了,需要手动下载计算hash512并且修改vcpkg_acquire_msys.cmake的下载地址,计算文件hash512方法就是使用windows自带的工具,格式为 certutil
vcpkg 很方便了解决了 c++开发时的项目的第三方开源代码依赖问题。 方便的很,vcpkg install ffmpeg后,啥都不用直接#include ffmpeg的头文件就可以使用ffmpeg了。再也不用自己哼哧哼哧的下载编译,还要配置工程,添加库依赖了。 还得我以为vcpkg不好用呢。。。
当使用命令行或者vcpkg时,有时候需要设置代理来下载一些代码,那么可以这样: 本地先起一个http或者socks5的代理服务器。
: 克隆vcpkg仓库到本地: 运行命令 git clone https://github.com/Microsoft/vcpkg.git 进入vcpkg目录: cd vcpkg 根据你的操作系统, 执行以下命令来进行vcpkg的初始化和安装: 在Windows上: bootstrap-vcpkg.bat vcpkg install <package>(其中<package>是你需要安装的库的名称 <path_to_vcpkg>/scripts/buildsystems/vcpkg.cmake) 将<path_to_vcpkg>替换为vcpkg仓库的实际路径。 在Windows上,可以使用绝对路径(如C:/vcpkg)。在Linux或macOS上,可以使用相对路径(如../vcpkg)。 -DCMAKE_TOOLCHAIN_FILE=<path_to_vcpkg>/scripts/buildsystems/vcpkg.cmake (在这里,<path_to_vcpkg>应该是vcpkg
/vcpkg.git. /vcpkg/bootstrap-vcpkg.sh# 安装依赖. /vcpkg install fmt spdlog boost-asio nlohmann-json在CMake中集成vcpkg:# 在CMakeLists.txt开头添加if(DEFINED ENV{ /vcpkg/bootstrap-vcpkg.sh echo "VCPKG_ROOT=$pwd/vcpkg" | Out-File -FilePath $env:GITHUB_ENV -Encoding -DCMAKE_TOOLCHAIN_FILE="$env:VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake" cmake --build .
选vcpkg,如果你是:Windows/VisualStudio用户,追求与IDE无缝集成,需要简单快速上手。 )VS集成度完美良好良好二、vcpkg快速上手1.核心命令速查展开代码语言:BashAI代码解释#1.克隆仓库gitclonehttps://github.com/microsoft/vcpkg.gitcdvcpkg \bootstrap-vcpkg.bat#Linux/macOS:. -DCMAKE_TOOLCHAIN_FILE=[vcpkg-root]/scripts/buildsystems/vcpkg.cmakecmake--buildbuild3.实用技巧镜像加速:在vcpkg-configuration.json :配置vcpkg-configuration.json#Conan:conanremoteadd镜像源#xmake:默认已优化,也可通过xmakeg--proxy=xxx配置2.编译速度优化vcpkg:
M$提供的c/c++第三方库集成工具:vcpkg 安装vcpkg很简单,直接从M$的git仓库:https://github.com/Microsoft/vcpkg.git 拉一下代码,然后编译就行了。 > git clone https://github.com/Microsoft/vcpkg.git > cd vcpkg PS> . /vcpkg integrate install C:\Devtools\project\git\vcpkg>vcpkg integrate install Applied user-wide integration for this vcpkg root. 现在vcpkg一键搞定。 PS>.\vcpkg list //这个命令可以列出已经安装的三方库。 .\vcpkg.exe search //这个命令可以列出vcpkg支持哪些三方库。
linux下编译 参考文章Centos 7 安装RocksDB 居然顺利编译通过,给作者点赞 windows编译 1、安装vcpkg 参考Readme git clone https://github.com /microsoft/vcpkg . \vcpkg\bootstrap-vcpkg.bat 2、安装rocksdb . \vcpkg\vcpkg install rocksdb 中间出了个错误 Warning: The following VS instances are excluded because the English \vcpkg\vcpkg install rocksdb 最后出现: Installing package rocksdb[core,zlib]:x86-windows... done Elapsed
这里笔者的解决方案是直接使用vcpkg。 vcpkg是微软开发的C/C++跨平台开源库管理工具,试用了一下,感觉确实比以前进步很多,如果不是像笔者一样有自己的需求,完全可以都使用vcpkg来安装依赖库。 通过以下指令下载并安装iconv: git clone https://github.com/microsoft/vcpkg cd vcpkg .\bootstrap-vcpkg.bat . 另外,不知道vcpkg的机制是什么,vcpkg确实也使用了cmake来构建,因为生成了cmake的配置文件,可以直接被CMake项目集成使用。 如果是直接使用的vcpkg,那么需要将vcpkg集成到CMake搜索路径中: vcpkg integrate install 如果是像笔者一样,是将iconv复制到自己仓库中使用,那么需要在CMake的内置变量
或者conanfile.py中描述依赖 conan -h 查看帮助,帮助中有指令example conan new cmake_lib -d name=hello -d version=0.1 vcpkg https://gitee.com/mirrors/vcpkg.git 运行bootstrap-vcpkg.bat文件后,下载vcpkg.exe 官网说明:https://vcpkg.io/en vcpkg install package vcpkg integrate install vcpkg list //查看已安装 Using vcpkg with CMake cmake -B -DCMAKE_TOOLCHAIN_FILE=[path to vcpkg]/scripts/buildsystems/vcpkg.cmake 或者拷贝vcpkg.cmake到的 share\cmake