vcpkg 是微软 C++ 团队开发的在 Windows 上运行的 C/C++ 项目包管理工具,可以帮助您在 Windows 平台上获取 C 和 C++ 库.

vcpkg 自身也是使用 C++ 开发的 (而其他的 C++ 包管理大多并不是 C++ 开发的),并且 vcpkg 能够帮助用户在 Visual Studio 中,更好的使用这些安装好的库.

vcpkg 整合了 git,构建系统整合的 CMake,而绝大多数的 C++ 项目都可以直接或者间接的方式使用 CMake创建原生项目文件并构建.

安装:

克隆代码:

git clone https://github.com/Microsoft/vcpkg

打开Windows Powershell,

cd D:\Develop\GitOthers\vcpkg
./bootstrap-vcpkg.bat

设定user-wide整合(初次执行需要管理员权限)

./vcpkg.exe integrate install

设置环境变量

默认编译库类型(32位还是64位) VCPKG_DEFAULT_TRIPLET, 可设置的值如下:

PS > ./vcpkg help triplet
Available architecture triplets:
arm-uwp
x64-uwp
x64-windows-static
x64-windows
x86-uwp
x86-windows-static
x86-windows

vcpkg命令

打开Windows PowerShell

查看帮助

 ./vcpkg --help
Commands:
vcpkg search [pat] 查找包 Search for packages available to be built
vcpkg install <pkg> 安装包 Install a package
vcpkg remove <pkg>   卸载包 Uninstall a package.
vcpkg remove --purge <pkg> 卸载并删除包(包升级时需要) Uninstall and delete a package.
vcpkg list 列出已安装包 List installed packages
vcpkg update 列出需要升级的包 Display list of packages for updating
vcpkg hash <file> [alg] 对文件进行Hash(默认是SHA512) Hash a file by specific algorithm, default SHA512 vcpkg integrate install Make installed packages available user-wide. Requires admin privileges on first use
vcpkg integrate remove Remove user-wide integration
vcpkg integrate project Generate a referencing nuget package for individual VS project use vcpkg edit <pkg> Open up a port for editing (uses %EDITOR%, default 'code')
vcpkg import <pkg> Import a pre-built library
vcpkg create <pkg> <url>
[archivename] Create a new package
vcpkg owns <pat> Search for files in installed packages
vcpkg cache List cached compiled packages
vcpkg version Display version information
vcpkg contact Display contact information to send feedback Options:
--triplet <t> Specify the target architecture triplet.
(default: %VCPKG_DEFAULT_TRIPLET%, see 'vcpkg help triplet') --vcpkg-root <path> Specify the vcpkg root directory
(default: %VCPKG_ROOT%)

示例:

删除库(VCPKG_DEFAULT_TRIPLET指定位)
./vcpkg remove zlib libiconv

删除32位库
./vcpkg remove zlib:x86-windows libiconv:x86-windows

删除64位库
./vcpkg remove zlib:x64-windows libiconv:x64-windows

其它:

{VCPKG_ROOT}\triplets\x64-windows.cmake 可以在这里进行环境变量设置

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_PLATFORM_TOOLSET v140)

参考:

1. Vcpkg使用指南-简书

win10 + vs2017 + vcpkg —— VC++ 打包工具的更多相关文章

  1. vcpkg —— VC++ 打包工具

    引用: http://www.tuicool.com/articles/aeiYz2v vcpkg 是微软 C++ 团队开发的在 Windows 上运行的 C/C++ 项目包管理工具,可以帮助您在 W ...

  2. vcpkg-微软开发的VC++打包工具

    vcpkg-VC++打包工具 1. 介绍 VCPKG,是VC++ Packaging Tool. 是微软 C++ 团队开发的在 Windows 上运行的 C/C++ 项目包管理工具,可以帮助您在 Wi ...

  3. CAFFE在win10+VS2017下的安装笔记

    老版的caffe在BVLC的github上已经找不到,如果要想下载老版caffe可以下载微软的caffe版本:https://github.com/Microsoft/caffe 网上的大多安装caf ...

  4. Windows服务项目打包成安装包(Windows服务)-----------VS2017项目程序打包成.msi或者.exe

    VS2017项目程序打包成.msi或者.exe Windows服务项目使用VS2017项目程序打包成.msi或者.exe安装包 项目打包成安装包(Windows服务) 1.安装打包插件:Microso ...

  5. VS2017项目程序打包成.msi或者.exe

    VS2017项目程序打包成.msi或者.exe 1.安装打包插件:Microsoft Visual Studio 2017 Installer Projects 打开vs2017 ,选择 工具 --& ...

  6. Linux中常用压缩打包工具

    Linux中常用压缩打包工具 压缩打包是常用的功能,在linux中目前常用的压缩工具有gzip,bzip2以及后起之秀xz.本文将介绍如下的工具常见压缩.解压缩工具以及打包工具tar. gzip2 直 ...

  7. 使用Advanced Installer打包工具如何设置是否安装预安装程序包

    要保证我们的程序能在目标机器上正常运行,便需要保证目标机器上提供了程序运行的必要组件. 而在使用Advanced Installer打包工具制作程序安装包时,我们可以通过配置“需求-运行环境-程序包- ...

  8. 细说前端自动化打包工具--webpack

    背景 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过链接组织在一起.用过Dreamweaver的都知道,做网页就像用word编辑文档 ...

  9. Atitit.项目修改补丁打包工具 使用说明

    Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...

随机推荐

  1. 菜鸟使用 centOS 安装 redis 并放入service 启动 记录

    1.下载redis: wget http://download.redis.io/releases/redis-2.8.17.tar.gz 若wget 不可用,请先安装wget yum install ...

  2. SQL Server之存储过程

    存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行. 存储过程中可以包含逻辑控制语句和数据操纵语句,它 ...

  3. Asp.Net Core 自动适应Windows服务、Linux服务、手动启动时的内容路径的扩展方法

    public static IWebHostBuilder UseContentRootAsEnv(this IWebHostBuilder hostBuilder) { bool IsWindows ...

  4. kvm迁移

    一.迁移简介 迁移:      系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行.在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实时 ...

  5. centos6.5 安装Python3.6.0

      首先安装python3.6可能使用的依赖 # yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel ...

  6. HDU2866 Special Prime

    题目网址:http://acm.hdu.edu.cn/showproblem.php?pid=2866 题意:在区间[2,L]内,有多少个素数p,满足方程有解. 分析: 原方程变为: n^(b-1) ...

  7. 2018 noip 备战日志

    我是写给自己看的…… Day1 10.8 今天开始停晚修课了,开始认真备战考试了. 今天晚上效率不错,竟然不会累,应该是平时一直这个时间写作业大脑高度集中, 现在换了编程也一样可以集中到这个状态 一些 ...

  8. 与公司2位经理的交流,Web开发知识库建设

    1.代码库3种类型 WebCommon:网站开发技术选型和最佳实践 FansCommons :各种可以复用的代码 CentronCore,CentronWeb 3种类型:通用,web,环境(通用+We ...

  9. java IO框架分析

    jave.io框架 2010-11-10 22:18:34|  分类: 默认分类|举报|字号 订阅     可从IO的类层次,IO框架的设计模式来论述. 总体来说,IO可以分为字节流和字符流,不同在于 ...

  10. ZooKeeper搭建系列集 (这套很全,也很详细)

    原文链接:http://blog.csdn.net/shatelang/article/details/7596007 本篇文章结构: 总共包括10个系列 ZooKeeper系列之一:ZooKeepe ...