vcpkg 概述
vcpkg 是由 Microsoft 和 C++ 社区维护的免费开源 C/C++ 包管理器。
vcpkg 最初于 2016 年推出,旨在帮助开发者将项目迁移到更新版本的 Visual Studio,现已发展为一个跨平台工具,被 Windows、macOS 和 Linux 上的开发者广泛使用。vcpkg 拥有庞大的开源库集合和企业级功能,旨在通过支持任意构建和项目系统来促进您的开发流程。vcpkg 本质上是一个 C++ 工具,使用 C++ 编写,并包含 CMake 脚本。它从底层设计出发,专门解决 C/C++ 开发者所面临的独特痛点。
该工具及其生态系统在不断演进,我们非常欢迎贡献!请通过我们的打包教程和维护者指南了解如何开始贡献。
快速入门
首先,请遵循我们的快速入门指南之一。
无论您使用 CMake、MSBuild 还是其他构建系统,vcpkg 都能满足您的需求:
您也可以使用任何编辑器:
如果您需要的库不存在于 vcpkg 注册表中,在 GitHub 仓库上提交 issue 或 自行贡献该包。
在成功安装并运行 vcpkg 之后,您可能希望为终端添加 标签补全功能。
使用 vcpkg
创建您项目依赖项的清单:
vcpkg new --application
vcpkg add port fmt
或者通过命令行安装软件包:
vcpkg install fmt
然后使用我们可用的集成之一,用于 CMake、 MSBuild 或 其他构建 系统。
要获取所有可用命令的简短描述,请运行 vcpkg help。
运行 vcpkg help [topic] 以获取特定主题的详细信息。
主要功能
vcpkg 为您的包管理需求提供了强大的功能:
贡献
vcpkg 是一个开源项目,因此是依靠您的贡献构建的。以下是您可以贡献的一些方式:
请参阅我们的 维护者指南 和 打包教程 以获取更多详细信息。
本项目已采纳 Microsoft 开源行为准则。有关更多信息,请参阅 行为准则 常见问题解答 或发送电子邮件至 opencode@microsoft.com 提出任何额外的 问题或评论。
资源
- 端口:Microsoft/vcpkg
- 源代码:Microsoft/vcpkg-tool
- 文档:Microsoft Learn | vcpkg
- 网站:vcpkg.io
- 电子邮件:vcpkg@microsoft.com
- Discord:#include <C++> 的 Discord 服务器,位于 #🌏vcpkg 频道
- Slack:C++ Alliance 的 Slack 服务器,位于 #vcpkg 频道
许可证
本仓库中的代码采用 MIT 许可证授权。端口提供的库根据其原始作者的条款进行授权。在可用的情况下,vcpkg 将相关许可证放置在
installed/<triplet>/share/<port>/copyright 位置。
安全性
vcpkg 中的大多数端口使用原始库开发者首选的原始构建系统来构建相关库,并从其官方分发位置下载源代码和构建工具。对于在防火墙后使用, 具体所需的访问权限取决于正在安装哪些端口。如果必须在“气隙”环境中安装,请考虑在非“气隙”环境中安装一次, 并将资源填充到与否则处于“气隙”状态的环境共享的 资产 缓存 中。
遥测
vcpkg 收集使用数据以帮助我们改善您的体验。Microsoft 收集的数据是匿名的。您可以通过以下方式选择退出遥测:
- 使用
-disableMetrics运行 bootstrap-vcpkg 脚本 - 在命令行上向 vcpkg 传递
--disable-metrics - 设置
VCPKG_DISABLE_METRICS环境变量
有关 vcpkg 遥测的更多信息,请访问 https://learn.microsoft.com/vcpkg/about/privacy。