This blog post summarizes changes to the vcpkg package manager as part of the 2025.04.09 registry release, 2025-03-22, 2025-04-01, and 2025-04-07 tool releases, as well as changes to vcpkg documentation throughout April. This release contains bug fixes, a new documentation article on offline usage of vcpkg, and other minor improvements. Arm64 Linux users of vcpkg also no longer have to build the vcpkg tool from source when they install vcpkg.
Some stats for this period:
- There are now 2,587 total ports available in the vcpkg curated registry. A port is a versioned recipe for building a package from source, such as a C or C++ library.
- 23 new ports were added to the curated registry.
- 234 ports were updated. As always, we validate each change to a port by building all other ports that depend on or are depended by the library that is being updated for our 15 main triplets.
- 92 community contributors made commits.
- The main vcpkg repo has over 6,800 forks and 24,600 stars on GitHub.
vcpkg changelog (2025.04.09 release)
The following notable changes were made in April:
- Arm64 Linux users of vcpkg now receive a prebuilt binary when they bootstrap, rather than having to wait for a source build (PR: Microsoft/vcpkg-tool#1599).
- Improved vcpkg output to clearly state relative paths to files that are being downloaded (PR: Microsoft/vcpkg-tool#1618).
- Fixed a crash on Windows when curl is used to download assets (PR: Microsoft/vcpkg-tool#1639, thanks @autoantwort!).
- Fixed some bugs with SPDX files generated by vcpkg (PR: Microsoft/vcpkg-tool#1607, thanks @Thomas1664!).
- Fixed some bugs with how vcpkg interacts with curl (PRs: Microsoft/vcpkg-tool#1440, Microsoft/vcpkg-tool#1598, Microsoft/vcpkg-tool#1630, thanks @moritz-h, @AndreyAlifanov, and @Osyotr!).
- Other bug fixes (thanks @autoantwort!).
Documentation changes
- New concepts article: Offline Usage of vcpkg. Details two methods on how to deploy vcpkg in environments without live Internet connectivity (PR: Microsoft/vcpkg-docs#457).
- Added entry for VCPKG_LOCK_FIND_PACKAGE_<Pkg> to vcpkg in CMake projects concepts article. When this option is set, non-nested calls to CMake’s find_package can be required or disabled (PR: Microsoft/vcpkg-docs#344).
- Added entry for MAYBE_UNUSED_VARIABLES to the Maintainer guide. This can be used to silence a warning during the CMake configuration step (PR: Microsoft/vcpkg-docs#468).
- Revised vcpkg FAQ entry for how to use custom compiler flags to rebuild libraries by providing more specific and actionable advice (PR: Microsoft/vcpkg-docs#465).
- Revised usage and copyright instructions in Tutorial: Package a library with vcpkg and Provide usage documentation for your ports articles (PR: Microsoft/vcpkg-docs#463, thanks @dg0yt!).
- Sorted Concepts table of contents entries alphabetically (PR: Microsoft/vcpkg-docs#471).
If you have any suggestions for our documentation, please submit an issue in our GitHub repo or see the box at the bottom of a particular article.
Total ports available for tested triplets
Triplet | Ports available |
x86-windows | 2366 |
x64-windows | 2489 |
x64-windows-release | 2489 |
x64-windows-static | 2352 |
x64-windows-static-md | 2405 |
x64-uwp | 1387 |
arm64-windows | 2078 |
arm64-windows-static-md | 2056 |
arm64-uwp | 1351 |
x64-osx | 2352 |
arm64-osx | 2271 |
x64-linux | 2472 |
arm-neon-android | 1827 |
x64-android | 1884 |
arm64-android | 1851 |
While vcpkg supports a much larger variety of target platforms and architectures (as community triplets), the list above is validated exhaustively to ensure updated ports don’t break other ports in the catalog.
Thank you to our contributors
vcpkg couldn’t be where it is today without contributions from our open-source community. Thank you for your continued support! The following people contributed to the vcpkg, vcpkg-tool, or vcpkg-docs repos in this release (listed alphabetically by GitHub username):
a4z | gian21391 | owent |
AaronVanGeffen | guillermocalvo | PolarGoose |
adolfos94 | gwaldron | rremilian |
Alex-PLACET | helynranta | RippeR37 |
alfredh | HexDecimal | rmisev |
aluaces | hosseinmoein | RT2Code |
aminya | JAicewizard | rtzoeller |
autoantwort | jalegido | saschanaz |
azure-sdk | jeremy-rifkin | SidneyCogdill |
AenBleidd | jglanz | sinfomicien |
bgsuello | jonahbeckford | skypjack |
braindigitalis | jreichel-nvidia | snnn |
buck-yeh | k-wojcik | sorokin |
BurningEnlightenment | lbartoletti | starfishmod |
c8ef | longnguyen2004 | strega-nil |
cenit | luncliff | SunBlack |
chrismile | m7913d | swebb2066 |
culhatsker | m-kuhn | talregev |
Darkx32 | mathgeekcoder | tartanpaint |
daschuer | Markus87 | tghviking |
derchr | miyanyan | Thomas1664 |
dg0yt | mussorgsky | ThomsonTan |
Dryvnt | mvieth | timheeg |
dunhor | Mysvac | toge |
eao197 | Neumann-A | Tradias |
EnzoMassyle | nickdademo | VuYeK |
Erik-White | Niproblema | walbourn |
ewertons | nlogozzo | weirddan455 |
F-I-D-O | oleg-derevenetz | yanzixiang |
Fidelxyz | olizit | ytnuf |
g-maxime | Osyotr |
Learn more
You can find the main release notes on GitHub. Recent updates to the vcpkg tool can be viewed on the vcpkg-tool Releases page. To contribute to vcpkg documentation, visit the vcpkg-docs repo. If you’re new to vcpkg or curious about how a package manager can make your life easier as a C/C++ developer, check out the vcpkg website – vcpkg.io.
If you would like to contribute to vcpkg and its library catalog, or want to give us feedback on anything, check out our GitHub repo. Please report bugs or request updates to ports in our issue tracker or join more general discussion in our discussion forum.
The post What’s New in vcpkg (April 2025) appeared first on C++ Team Blog.