{"slug": "vcpkg", "name": "vcpkg", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 3, "commenters": 8, "warners": 4, "score": -0.629, "rising": -0.98, "first": "2026-01-04", "latest": "2026-05-20", "why": "If only they switched to vcpkg from the abomination which Craft manager is...", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 0, "compare": 1, "warn": 4}, "spark": [0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "If only they switched to vcpkg from the abomination which Craft manager is...", "kind": "", "icon": false, "domain": "vcpkg.io", "github_repo": null, "official_url": "https://vcpkg.io/", "pricing": "", "aliases": ["vcpkg"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 771390080, "item_id": 48211880, "url": "https://news.ycombinator.com/item?id=48211880", "by": "bsenftner", "date": "2026-05-20", "version": null, "stance": "recommend", "quote": "Never used this? https://vcpkg.io/en/", "excerpt": "Never used this? https://vcpkg.io/en/", "context": "", "use_case": "C/C++ package management", "switched_from": "", "story": "No way to parse integers in C"}, {"id": 769458880, "item_id": 48091180, "url": "https://news.ycombinator.com/item?id=48091180", "by": "pjmlp", "date": "2026-05-10", "version": null, "stance": "recommend", "quote": "for me that should be something via vcpkg or conan", "excerpt": "Note that C++26 is supposed to include a linear algebra subset on the standard library, for me that should be something via vcpkg or conan, then again there should be less issues accessing it, provided one can eventually restrain themselves to such recent version. https://en.cppreference.com/cpp/numeric/linalg", "context": "", "use_case": "", "switched_from": "", "story": "BLAS, Lapack and OpenMP"}, {"id": 743783472, "item_id": 46486467, "url": "https://news.ycombinator.com/item?id=46486467", "by": "cromka", "date": "2026-01-04", "version": null, "stance": "recommend", "quote": "If only they switched to vcpkg from the abomination which Craft manager is...", "excerpt": "If only they switched to vcpkg from the abomination which Craft manager is... I used to do some dev work in KDE but after realizing I spent 70% of my time with that project on managing the Craft anti-pattern hell, I gave up. KDE is still extremely anal about not touching anything remotely related to Microsoft, even if it's a properly licensed open source, is way better and even some GNU projects have no issue with it", "context": "former KDE contributor", "use_case": "C++ dependency management", "switched_from": "", "story": "KDE onboarding is good now"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 763382161, "item_id": 47711385, "url": "https://news.ycombinator.com/item?id=47711385", "by": "looneysquash", "date": "2026-04-09", "version": null, "stance": "warn", "quote": "I have the same complaint about vcpkg.", "excerpt": "> The tough truth is that there already is a cargo for C/C++: Conan2 Is it though? When I read the tutorial: https://docs.conan.io/2/tutorial/consuming_packages/build_simple_cmake_project.html It says to hand write a `CMakeLists.txt` file. This is before it has me create a `conanfile.txt` even. I have the same complaint about vcpkg. It seems like it takes: `(conan | vcpkg) + (cmake | autotools) + (ninja | make)` to d", "context": "", "use_case": "", "switched_from": "", "story": "I built a Cargo-like build tool for C/C++"}, {"id": 755652483, "item_id": 47228280, "url": "https://news.ycombinator.com/item?id=47228280", "by": "certik", "date": "2026-03-02", "version": null, "stance": "warn", "quote": "it is indeed more complex than fpm", "excerpt": "I haven't used vcpkg, but looking at their tutorial at https://learn.microsoft.com/en-us/vcpkg/get_started/get-started?pivots=shell-bash, it seems you still have to use cmake, and if so, it is indeed more complex than fpm (https://fpm.fortran-lang.org/tutorial/hello-fpm.html) where you don't use cmake. Fpm is similar to Cargo. Cargo is indeed as simple as fpm. However, as I mentioned above, this is just a tooling iss", "context": "", "use_case": "", "switched_from": "", "story": "LFortran Compiles Fpm"}, {"id": 755468705, "item_id": 47216794, "url": "https://news.ycombinator.com/item?id=47216794", "by": "dxuh", "date": "2026-03-02", "version": null, "stance": "warn", "quote": "I have used vcpkg and conan extensively and have completely given up on them.", "excerpt": "I quite like modern C++, so I really tried to make it work for gamedev, but I think you can't really do it. You can use all the modern C++ features that are not in the standard library though! I am working on a little game the last few months and after a while I just decided to not use any of the C++ standard library (I just use a few C headers) and make my own Vector, Array, Span, String, FlatMap. And using those th", "context": "", "use_case": "", "switched_from": "", "story": "Making Video Games in 2025 (without an engine)"}]}], "who": [{"by": "cromka", "context": "former KDE contributor", "url": "https://news.ycombinator.com/item?id=46486467", "date": "2026-01-04"}], "tags": [], "use_cases": ["c/c++ package management", "c++ dependency management"], "compared": [{"slug": "conan", "name": "Conan", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "cmake", "name": "CMake", "co": 3, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=48205580", "title": "No way to parse integers in C", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=48083814", "title": "BLAS, Lapack and OpenMP", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47705413", "title": "I built a Cargo-like build tool for C/C++", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47188014", "title": "LFortran Compiles Fpm", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47176576", "title": "Making Video Games in 2025 (without an engine)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46753037", "title": "Xmake: A cross-platform build utility based on Lua", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {"recommend": 1, "warn": 1}, "2026-02": {}, "2026-03": {"warn": 2}, "2026-04": {"warn": 1}, "2026-05": {"recommend": 2, "compare": 1}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 771392385, "item_id": 48212024, "url": "https://news.ycombinator.com/item?id=48212024", "by": "fintler", "date": "2026-05-20", "version": null, "stance": "compare", "quote": "Although vcpkg is probably the most popular", "excerpt": "Although vcpkg is probably the most popular, I\u2019m a fan of https://conan.io/center", "context": "", "use_case": "", "switched_from": "", "story": "No way to parse integers in C"}, {"id": 771390080, "item_id": 48211880, "url": "https://news.ycombinator.com/item?id=48211880", "by": "bsenftner", "date": "2026-05-20", "version": null, "stance": "recommend", "quote": "Never used this? https://vcpkg.io/en/", "excerpt": "Never used this? https://vcpkg.io/en/", "context": "", "use_case": "C/C++ package management", "switched_from": "", "story": "No way to parse integers in C"}, {"id": 769458880, "item_id": 48091180, "url": "https://news.ycombinator.com/item?id=48091180", "by": "pjmlp", "date": "2026-05-10", "version": null, "stance": "recommend", "quote": "for me that should be something via vcpkg or conan", "excerpt": "Note that C++26 is supposed to include a linear algebra subset on the standard library, for me that should be something via vcpkg or conan, then again there should be less issues accessing it, provided one can eventually restrain themselves to such recent version. https://en.cppreference.com/cpp/numeric/linalg", "context": "", "use_case": "", "switched_from": "", "story": "BLAS, Lapack and OpenMP"}, {"id": 763382161, "item_id": 47711385, "url": "https://news.ycombinator.com/item?id=47711385", "by": "looneysquash", "date": "2026-04-09", "version": null, "stance": "warn", "quote": "I have the same complaint about vcpkg.", "excerpt": "> The tough truth is that there already is a cargo for C/C++: Conan2 Is it though? When I read the tutorial: https://docs.conan.io/2/tutorial/consuming_packages/build_simple_cmake_project.html It says to hand write a `CMakeLists.txt` file. This is before it has me create a `conanfile.txt` even. I have the same complaint about vcpkg. It seems like it takes: `(conan | vcpkg) + (cmake | autotools) + (ninja | make)` to d", "context": "", "use_case": "", "switched_from": "", "story": "I built a Cargo-like build tool for C/C++"}, {"id": 755652483, "item_id": 47228280, "url": "https://news.ycombinator.com/item?id=47228280", "by": "certik", "date": "2026-03-02", "version": null, "stance": "warn", "quote": "it is indeed more complex than fpm", "excerpt": "I haven't used vcpkg, but looking at their tutorial at https://learn.microsoft.com/en-us/vcpkg/get_started/get-started?pivots=shell-bash, it seems you still have to use cmake, and if so, it is indeed more complex than fpm (https://fpm.fortran-lang.org/tutorial/hello-fpm.html) where you don't use cmake. Fpm is similar to Cargo. Cargo is indeed as simple as fpm. However, as I mentioned above, this is just a tooling iss", "context": "", "use_case": "", "switched_from": "", "story": "LFortran Compiles Fpm"}, {"id": 755468705, "item_id": 47216794, "url": "https://news.ycombinator.com/item?id=47216794", "by": "dxuh", "date": "2026-03-02", "version": null, "stance": "warn", "quote": "I have used vcpkg and conan extensively and have completely given up on them.", "excerpt": "I quite like modern C++, so I really tried to make it work for gamedev, but I think you can't really do it. You can use all the modern C++ features that are not in the standard library though! I am working on a little game the last few months and after a while I just decided to not use any of the C++ standard library (I just use a few C headers) and make my own Vector, Array, Span, String, FlatMap. And using those th", "context": "", "use_case": "", "switched_from": "", "story": "Making Video Games in 2025 (without an engine)"}, {"id": 748973602, "item_id": 46810850, "url": "https://news.ycombinator.com/item?id=46810850", "by": "warmwaffles", "date": "2026-01-29", "version": null, "stance": "warn", "quote": "", "excerpt": "I use it for personal projects and I find it substantially easier to mess around with compiling shaders to SPIRV, processing assets, etc... But some of my gripes are, although it _is_ lua, there is some magic fuckery going on. When you specify targets, things for that target need to be close to the definition, and it feels very odd in a lua language to not have `target(\"name\", function (ctx) ... end)`. Anyways, not g", "context": "", "use_case": "", "switched_from": "", "story": "Xmake: A cross-platform build utility based on Lua"}, {"id": 743783472, "item_id": 46486467, "url": "https://news.ycombinator.com/item?id=46486467", "by": "cromka", "date": "2026-01-04", "version": null, "stance": "recommend", "quote": "If only they switched to vcpkg from the abomination which Craft manager is...", "excerpt": "If only they switched to vcpkg from the abomination which Craft manager is... I used to do some dev work in KDE but after realizing I spent 70% of my time with that project on managing the Craft anti-pattern hell, I gave up. KDE is still extremely anal about not touching anything remotely related to Microsoft, even if it's a properly licensed open source, is way better and even some GNU projects have no issue with it", "context": "former KDE contributor", "use_case": "C++ dependency management", "switched_from": "", "story": "KDE onboarding is good now"}]}