Live data from Hacker News

A different approach to building C++ projects

rachelbythebay.com

71–74 of 74 posts

Re: A different approach to building C++ projects

#71
post #64
post #61

Earlier quoted context omitted.

Does this work across linux, mac and windows cross platform projects?

vcpkg the tool is cross platform. Of course not all libraries in vcpkg are cross platform, but most are.

Likewise for NuGET in the context of .NET libraries with native dependencies.

Re: A different approach to building C++ projects

#72
post #3

This is sort of unrelated, but that reminds me that one of my biggest issues with learning C++ was how I was expected to deal with libraries (particularly on Linux, where conventions will even differ between distros) and building the project. Most guides or what have you sort of teach you how to compile a file or two, but you quickly run into issues that are difficult to solve for a complete beginner without a direct…

I agree, it’s so horrible. Passing flags to a compiler for some Byzantine rule just to change lord knows what, but it all works now. What on earth.

I wish somebody would write a book. Even an online book. An all-encompassing book just about how to link/build C++ projects and all the different solutions people use and how they work in practice. Common ways to organize and configure C++ project builds. How Linux distros each differ in where libraries are stored and how to find and link them. Common issues and how to fix them. But it also needs to convey how all these things work and help you create a mental model that allows you to also find your own solutions.

Re: A different approach to building C++ projects

#73
post #56

Earlier quoted context omitted.

Same here and I am dreading starting back up again. Are there any Gradle /npm like package managers that might simplify this? Looking for something that is still alive in 2023

Conan works pretty well. There is also vcpkg, but I haven't used it. But are current and maintained.

Will check them out

Re: A different approach to building C++ projects

#74
post #44
post #38

Earlier quoted context omitted.

> whatever it is, you need to _learn_ it. The problem in my experience is you invest time learning build system A, then a year later build system B comes out, and not only do you need to relearn a bunch of stuff again, often build system B does some of the stuff of system A but not all of it, plus it does new stuff that you've never encountered before. Then this cycle repeats, endlessly, and every new team you join h…

Who says you have to learn tool B just because it was released? Just ignore it and keep using A.

Because "every new team you join has adopted the newest build system".

Just like in the last 2-3 years, every single new team I've joined is using kubernetes from day 1. Cargo culting is a huge force.

Post reply on HN