vcpkg 安装任意版本的开源库

这篇具有很好参考价值的文章主要介绍了vcpkg 安装任意版本的开源库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

为表述方便,本文全以openssl为例。

常规安装

前面已经写过vcpkg的简明教程:https://blog.csdn.net/poinsettia/article/details/127885576

只要执行以下几行命令,就可以安装好openssl

git clone https://github.com/Microsoft/vcpkg.git # install vcpkg
./vcpkg\bootstrap-vcpkg.bat # build vcpkg.exe
./vcpkg install openssl:x64-windows # install opensl

但是这样有个问题是,这样只能安装默认版本的openssl,无法指定具体的openssl。

注:openssl的版本定义在ports文件夹中的vcpkg.json中

Example

{
  "name": "openssl",
  "version-string": "1.1.1n",
  "description": "OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.",
  "homepage": "https://www.openssl.org",
  "license": "OpenSSL",
  "dependencies": [
    {
      "name": "vcpkg-cmake",
      "host": true
    },
    {
      "name": "vcpkg-cmake-config",
      "host": true
    }
  ]
}

那如何安装自己想要的版本呢? 比如目前vcpkg的默认版本(其实是最新版本)是3.0.7,我想安装1.1.1n 怎么办呢?

安装任意版本

Refer:https://stackoverflow.com/questions/53805917/install-older-version-of-protobuf-via-vcpkg

The selected answer

To have a specific version of a package in vcpkg, you need to checkout at the appropriate point in time in the vcpk repo.

  1. Go to your git installed vcpk folder.
  2. Identify the commit matching the version of protobuf you’re looking for.

The following line color-codes the commit history to make it more readable and pipe it with grep to identify protobuf related commits.

git log --color=always --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad)' --date=short | grep --color=never openssl

You’ll find a line like b1fea4588 - [protobuf] update to 3.5.1 (2018-01-31). (The commit hash/message may have changed if the history has been rewritten.)

  1. Checkout the commit of interest : git checkout b1fea4588
  2. Run vcpkg install protobuf

The issue of package version management is very active on vcpkg repo. Check Issue #3592

大意就是根据git log 找到openssl1.1.1n 对应的vcpkg的git 节点,把vcpkg git repo reset到对应节点,然后就可以install 1.1.1n版本啦。

那如果版本在vcpkg找不到呢? 比如 openssl1.1.1q

利用vcpkg build自己想要的包

refer:https://vcpkg.io/en/docs/examples/packaging-zipfiles.html

文中的方法麻烦的点是在于要自己写portfile.cmake, 为了简单起见,我直接利用了openssl1.1.1n的工程进行改造。具体过程如下:

  1. 利用git log找到升级openssl1.1.1n的节点

  2. git show 查看具体提交了什么内容

  3. 仿照git show提交的内容,把1.1.1n版本改为1.1.1q版本。

    我是借助TortoiseSVN 工具,可以更方便看到修改的文件。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CFt4blZy-1668671164163)(windows openssl 出包.assets/image-20221117154016692.png)]

遇到的最主要问题就是hash值校验,这个问题也可以很方便解决,因为在install 的时候会给出提示,提示中有正确的hash,直接复制过去即可。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cV9iUKyX-1668671164164)(windows openssl 出包.assets/image-20221117154407120.png)]文章来源地址https://www.toymoban.com/news/detail-415377.html

  1. install ./vcpkg install openssl:x64-windows

到了这里,关于vcpkg 安装任意版本的开源库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vcpkg 的安装与使用

    欢迎大家来我的博客逛逛👏:hauhau.cn 先确保你已经安装了: Windows7 及以上的版本 Git Visual Studio 2015 Update 3 及以上的版本 关于美化 Windows Terminal 及 Powershell,可以查看这篇优秀文章: Windows-Terminal 美化以及通过 OhMyPosh 美化 PowerShell vcpkg 需要 Visual Studio 安装了英文语言包,安装步

    2024年02月05日
    浏览(29)
  • windows 下包管理工具vcpkg安装

    主要参考博文:vcpkg安装及使用_我叫电池的博客-CSDN博客_vcpkg安装 由于需要在离线环境下面搭建开发环境,所有的包只能离线安装了,包括这个管理工具vcpkg的安装,也必须是离线安装。 一. 下载安装vcpkg管理工具 下载目录:microsoft/vcpkg: C++ Library Manager for Windows, Linux, and Mac

    2024年02月06日
    浏览(45)
  • 安装vcpkg管理opencv的安装+MFC缺失的解决

    在VC的提示下,安装了vcpkg,然后用vcpkg命令来帮助安装opencv,过程十分顺利。 1. cmd 到命令行窗口; 2. 建立src文件夹,并进入该文件夹clone vcpkg git clone https://github.com/Microsoft/vcpkg.git 3. 再运行 .vcpkgbootstrap-vcpkg.bat 脚本,从而建立vcpkg命令; 4. 运行后就可以执和行vcpkg命令,

    2024年02月20日
    浏览(29)
  • 开源简单方便功能强大的Devops工具:Goploy

    Goploy:加速您的DevOps旅程,拥抱无缝部署——选择Goploy,让您从繁琐的发布与回滚中解放出来,尽享高效、智能与便捷的自动化部署力量! - 精选真开源,释放新价值。 现在大部分流行的发布工具功能虽然强大,但是配置较为麻烦,上手难度大,中小型项目难以使用。而

    2024年04月17日
    浏览(40)
  • cmake/vcpkg x64-windows colmap安装/编译

            colmap是增量式sfm开源软件。相比于之前的sfm工作,colmap在选择最优初始图,选择最优更新图,三角化,BA,和迭代方面都有策略上的更新。本博文介绍其安装/编译方法。博主是先安装跑了下功能,再编译以阅读源码。         安装的软件是封装好的,无法看到源代码

    2024年02月08日
    浏览(62)
  • 02-EMQ开源版本安装和使用

    官网网址:https://www.emqx.com/zh EMQX 是一款大规模可弹性伸缩的云原生分布式物联网 MQTT 消息服务器。 作为全球最具扩展性的 MQTT 消息服务器,EMQX 提供了高效可靠海量物联网设备连接,能够高性能实时移动与处理消息和事件流数据,帮助您快速构建关键业务的物联网平台与应

    2024年04月13日
    浏览(26)
  • Windows下载安装vcpkg并使用它来安装第三方库(visualstudio)

    1.使用Git下载vcpkg仓库( 下载比较慢,个人比较喜欢打开下面网址然后用迅雷下载,速度飞快 ) 2.下载好之后解压打开文件夹,双击bootstrap-vcpkg.bat文件,如果成功的话会在文件夹里生成一个vcpkg.exe文件。( 可能会出现窗口闪退导致没有生成exe文件,开启科学上网就可以解决

    2024年01月18日
    浏览(51)
  • 【数据结构】C--顺序表1.0版本(本文非常适合小白观看,已尽力详解,以及图解也是尽量列举)

    目录 0.前言 什么是数据结构? 1.逻辑结构: 1.1线性结构: 1.2非线性结构:         (1)集合         (2)树形结构         (3)图形结构或者网状结构 2.存储结构 一.线性表 二.顺序表 顺序表与数组的关系:(非常容易混淆) 1.静态顺序表:使用定长数组存储元素 2.动态顺序表

    2024年02月06日
    浏览(57)
  • Clion(2023)+QT(6.5)+cmake+vcpkg+Opencv(4.7)环境安装与使用

    用习惯了Clion,智能提示很棒,就不想用Qt自带的creator编辑器,并且新版的Clion支持编辑ui文件。于是搜罗了一下教程搭配一下环境安装,其实最重要的还是cmakelist的编写。 QT现在只能在线下载器安装。下载器的下载地址: 无脑最新的就好,需要注册账号,也很方便。安装时需

    2024年02月13日
    浏览(39)
  • 【配置环境】Windows下C/C++第三方库管理工具vcpkg安装和使用

    目录 一,环境准备 二,vcpkg简介 三,Window系统下载vcpkg 四,Linux系统下载vcpkg 五,vcpkg命令介绍 1.命令参照表 2.常用的vcpkg命令以及详细解释 Git - Downloads 根据平台下载最新版本(傻瓜式安装) Visual Studio 2015 或更新的版本( 包含英文语言包 ),点击VS界面菜单栏的 工具-获

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包