windows 下包管理工具vcpkg安装

article/2025/10/5 2:08:01

主要参考博文:vcpkg安装及使用_我叫电池的博客-CSDN博客_vcpkg安装

由于需要在离线环境下面搭建开发环境,所有的包只能离线安装了,包括这个管理工具vcpkg的安装,也必须是离线安装。

一. 下载安装vcpkg管理工具

下载目录:microsoft/vcpkg: C++ Library Manager for Windows, Linux, and MacOS (github.com)

 这个解压后就是一个目录树,通过这些目录树对包进行管理。cmd执行bootstrap-vcpkg.bat脚本,会从网络上下载vcpkg.exe,以后的包就都通过vcpkg.exe去搜索和下载。然而离线环境显然是没法将这个.exe下载下来的(但是可以看到它要从哪里下载文件,要放到哪里,这些打印信息是有用的)。记事本打开bootstrap-vckpg.bat,发现它执行了scripts/目录下的bootstrap.ps1这个脚本。分析bootstrap.ps1,可以看到它调用了tls12-download.exe下载vcpkg.exe:

 之前执行bootstrap-vcpkg.bat的报错信息,里面有vcpkg.exe的下载网址,手动下载并将其放到指定位置,并将下载指令注释掉,即可跳过下载,完成vcpkg工具的安装。

二. 使用vcpkg安装软件包

参考https://blog.csdn.net/vvaa00/article/details/113457742 中离线安装软件包,即可在没网的环境下完成开发环境搭建。可以先将待下载的软件包地址整理好,在一台有网络的电脑上下载好,放入downloads文件夹中。比如在安装apr-util时,有很多依赖包需要安装,即可将需要下载的软件包整理成为packages.txt,执行批量下载脚本,等待下载完成,拷贝到离线环境,继续安装即可。

//file packages.txt

https://github.com/libexpat/libexpat/archive/R_2_4_9.tar.gz

https://repo.msys2.org/mingw/i686/mingw-w64-i686-pkg-config-0.29.2-3-any.pkg.tar.zst

https://repo.msys2.org/mingw/i686/mingw-w64-i686-libwinpthread-git-9.0.0.6373.5be8fcd83-1-any.pkg.tar.zst

https://github.com/openssl/openssl/archive/openssl-3.0.5.tar.gz

https://strawberryperl.com/download/5.32.1.1/strawberry-perl-5.32.1.1-32bit.zip
https://github.com/gdraheim/zziplib/archive/v0.13.72.tar.gz
https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/win32/nasm-2.15.05-win32.zip

https://download.qt.io/official_releases/jom/jom_1_1_3.zip

https://archive.apache.org/dist/apr/apr-util-1.6.1.tar.bz2

windows批量下载脚本pkg-download.bat

@echo off
set urllist=C:\Users\Desktop\packages.txt
set dstDir=C:\Users\Desktop\packages\
setlocal enabledelayedexpansion
for /f  %%a in (%urllist%) do (set dst=%dstDir%%%~narem ***********使用Windows自带的Edge打开下载网页下载(速度最快)*****rem explorer.exe "microsoft-edge:%%a"rem ***********使用Windows自带的bitsadmin下载(速度最慢)*****rem bitsadmin /rawreturn /transfer down %%a !dst!rem ***********使用Windows自带的certutil下载*********rem certutil.exe -urlcache -split -f %%a !dst!rem ***********使用powershell的wget下载*************PowerShell -Command "&{wget -Uri %%a -OutFile !dst!}"
)
pause

三. windows编译log4cxx实战

主要参考官方教程:Apache log4cxx: Build with CMake

 其中apr和apr-util可以直接利用vcpkg.exe install apr apr-util安装, 只用最后面两句指令,生成器根据安装的visual studio 版本选择:

cd vcpkg
cmake -S D:/download/Log4cxx-0.13.0 -B buildtrees\Log4cxx -G "Visual Studio 12 2013" -DCMAKE_INSTALL_PREFIX=installed
##如果编译64位项目,则:
#cmake -S D:/download/Log4cxx-0.13.0 -B buildtrees\Log4cxx -G "Visual Studio 12 2013 WIN64" -DCMAKE_INSTALL_PREFIX=installed
cmake --build buildtrees\Log4cxx --target install --config Release

如果执行上面的语句出错,提示找不到sed和zip工具,可以在vcpkg文件夹下面搜索,看看有没有,因为在安装某些软件包时,这些工具可能也会被一并安装,比如vcpkg install zziplib的时候会有zip工具。找到这些工具路径,导入到环境变量中,即可配置通过:

cmd:   set PATH=xx/xx/bin;xx/xx/lib;%PATH%

powershell:   $env:PATH+=";xx/xx/bin;xx/xx/lib"


http://chatgpt.dhexx.cn/article/iyrNXfGG.shtml

相关文章

Vcpkg介绍及使用

Vcpkg用于在Windows、Linux、Mac上管理C和C库,极大简化了第三方库的安装,它由微软开源,源码地址:https://github.com/Microsoft/vcpkg,最新发布版本为2023.04.15 Release,它的license为MIT。 在windows上安…

Vcpkg C/C++库管理工具安装和使用教程(链接VS2019)

1、概述: Vcpkg是可用于Windows,linux和MacOS上跨平台的 C/C 库管理工具,是一款开源工具。在此对vcpkg的安装做一个简要的说明,有关具体命令的使用,在安装成功后使用 vcpkg help 或者 vcpkg help[comment] 可以获取特…

vcpkg安装及使用

vcpkg安装及使用 参考链接 1. 安装 内容复制自官方文档 首先,请下载vcpkg并执行 bootstrap.bat 脚本。 它可以安装在任何地方,但是通常我们建议您使用 vcpkg 作为 CMake 项目的子模块,并将其全局安装到 Visual Studio 项目中。我们建议您使…

vcpkg安装指定版本的库

由于fmt版本过高&#xff0c;部分依赖其的库使用时会报错&#xff08;错误 C2338 Cannot format an argument. To make type T formattable provide a formatter<T> specialization&#xff09;。 vcpkg install fmt:x64-windows 默认装的是fmt9.1.0&#xff0c;但是…

vcpkg基本使用

1. vcpkg安装 将下列powershell代码存成ps1文件&#xff0c;在目录下shift右键->打开power shell窗口&#xff0c;运行脚本后vcpkg即安装完成。 # 1. 创建目录、下载vcpkg&#xff1a; mkdir -f D:/APPs cd D:/APPs # github # git clone https://github.com/microsoft/vc…

Visual Studio开源库集成器Vcpkg全教程--利用Vcpkg轻松集成开源第三方库

利用Vcpkg轻松集成开源第三方库 1. 为什么要用Vcpkg 1.1. 传统使用开源库的方法 1.1.1. 编译工具1.1.2. 编译类型1.1.3. 工程目录设定 1.2. Vcpkg的优点 2. 获取Vcpkg 2.1. 下载Vcpkg2.2. 编译Vcpkg 3. 使用Vcpkg 3.1. 查看Vcpkg支持的开源库列表3.2. 安装一个开源库3.3. 指定编…

VCPKG安装和使用教程

文章目录 1. 安装2. 使用命令选项 3. 集成vcpkgWindows 上的 Visual Studio 集成Linux 或 macOS 上的 Visual Studio Code 集成删除 vcpkg 集成 使用举例4. 详细介绍4.1 新增库4.2 删除库4.3 查看已经安装的列表4.4 更新已经安装的开源库 1. 安装 去GitHub上下载源码&#xff…

vcpkg快速入门手册

文章目录 1. 简介2. 安装与使用2.1 获取vcpkg2.2 编译vcpkg2.3 vcpkg的文件夹层次结构2.4 设置vcpkg的环境变量2.5 vcpkg的常用命令2.6 安装包与Visual Studio集成 3. 常见的C库的CMake配置方式3.1 Boost3.2 cereal3.3 Ceres Solver3.4 CGAL3.5 FLANN3.6 GDAL3.7 GLEW3.8 GMP3.…

vcpkg安装和使用--学习入门

前言 vcpkg是一个C的包管理器。 包管理器是专门管理一些代码库的。比如一些大佬们开源的一些NB的框架&#xff0c;我们可以用vcpkg将他们放到自己的项目中。然后就可以直接用了。 我用的win10vs2019 【1】安装 &#xff08;1&#xff09;先git clone下载下来vcpkg文件夹。 …

Vcpkg 的安装与使用

Vcpkg 的安装与使用 欢迎大家来我的博客逛逛&#x1f44f;&#xff1a;hauhau.cn 需求 先确保你已经安装了: Windows7 及以上的版本GitVisual Studio 2015 Update 3 及以上的版本 关于美化 Windows Terminal 及 Powershell&#xff0c;可以查看这篇优秀文章: Windows-Termi…

C++第三方库管理工具vcpkg使用教程

目录 一、vcpkg介绍二、vcpkg安装1、安装vs英语语言包2、更新PowerShell版本3、配置终端4、clone vcpkg 三、vcpkg具体使用1、演示安装jsoncpp库2、指定位数安装3、查找支持的系统架构4、查看已经安装了哪些库5、如何卸载vcpkg 四、如何集成到visual studio1、集成到Visual Stu…

NS版暗黑破坏神3金手指开发教程(12)

上一节&#xff0c;我们了解到了宝石升级动画延时机制的修改&#xff0c;这一节&#xff0c;我们将全方位地介绍游戏中多个常用功能的延时机制修改&#xff0c;优化玩家的游戏体验&#xff0c;相信经过本节&#xff0c;读者的程序分析能力会有进一步提高 1. 我们首先从鉴定传奇…

NS版暗黑破坏神3金手指开发教程(2)

上一节&#xff0c;介绍了开发金手指所需的工具&#xff0c;这一节&#xff0c;正式开始简单的金手指修改 1. 首先&#xff0c;分别要准备好2.6.6的main.elf和原始版本待调试信息的DiabloIIINX64ra.elf&#xff0c;因为我们要修改的是2.6.6版本的elf&#xff0c;和最初带调试信…

NS版暗黑破坏神3金手指开发教程(7)

上一节&#xff0c;我们讲解了通过代码Hack的方式修改人物的魔法物品获取率和金币获取量等属性&#xff0c;这一节&#xff0c;我们将一鼓作气&#xff0c;拿下移速攻速等更复杂的属性修改 1. 我们在原始版本里搜索移速英文movespeed得到一个结果&#xff0c;双击打开伪代码 2…

Unity 基础常用的脚本(一)

1.获取相机射线 var ray Camera.main.ScreenPointToRay(Input.mousePosition); //GameObject.CreatePrimitive(PrimitiveType.Cube).transform.position ray.GetPoint(10.0f); transform.LookAt(ray.GetPoint(10.0f)); 2.AddForce和velocity有什么区别&#xff1f; AddForc…

NS版暗黑破坏神3金手指开发教程(10)

上一节&#xff0c;我们讲解了一击必杀&#xff0c;技能冷却无CD等人物战斗时用到的金手指制作&#xff0c;这一节&#xff0c;将会讲解人物升级相关的功能以及宝石和打孔器等材料数量的锁定功能制作 1. 在游戏中特别是在游戏后期&#xff0c;我们会发现人物随着等级的提高&am…

Unity脚本复习

1.在Project面板中显示和创建的每一个脚本其实都是一个类&#xff0c;当我们把脚本挂载到Hierarchy层级中的游戏物体时&#xff0c;其实我们就实现了将脚本类实例化为一个脚本组件&#xff08;对象&#xff09;的过程 2.在游戏运行时&#xff0c;场景加载&#xff0c;游戏对象…

零基础游戏开发笔记11——Unity脚本介绍、脚本初始阶段

1.语法结构&#xff1a; 2.编译过程&#xff1a; CLS->Mono RunTime->机器码 3.关于修改和创建脚本&#xff1a; 创建脚本&#xff1a; 一般我们会在项目中添加scripts文件夹&#xff0c;并在此文件夹中编写脚本&#xff0c;当然这些脚本可以根据个人喜好分配到不同类…

NS版暗黑破坏神3金手指开发教程(4)

上一节&#xff0c;我们讲了基于公式明文的金手指制作方法&#xff0c;这一节&#xff0c;我们将进阶到更高级的基于程序修改的金手指制作方法&#xff0c;从现在开始&#xff0c;对读者的技术水平有了一个更高的要求&#xff0c;读者最好有汇编和C/C高级语言的一些基础&#x…

NS版暗黑破坏神3金手指开发教程(17)

终于到最后一节了&#xff0c;在这一节中我们将讲解如何利用hack制作出丰富多彩的世界&#xff0c;开个玩笑&#xff0c;其实是因为由于暗黑三的AMIIBO功能很有意思&#xff0c;不但可以用普通手办在城外召唤出一组精英怪&#xff0c;而且在城内用专用哥布林手办还能开启宝藏秘…