4 ms·
Im glad it's not just me. I've spent weeks learning basic C to contribute a few patches to my favorite OSS project. I swear it's taken me longer to figure out
by throwaway189262 6y ago
Im glad it's not just me. I've spent weeks learning basic C to contribute a few patches to my favorite OSS project.
I swear it's taken me longer to figure out how to build and include libraries with CMake than learn C. And it still makes no sense to me. Seriously, what the fuck is wrong with C/C++ package management.
I gave up on learning the build system. I recreated a working build setup in Code::Blocks UI then exported it to a makefile. Then exported that to CMake and copy pasted shit into the original build setup until it worked. Fuck it. C library management is harder than the language
- earthboundkid 6y agoYes, everyone on HN likes to make fun of JavaScript because of leftpad, but the C/C++ ecosystem is much, much worse, which is a real achievement.
- de_watcher 6y agoNo, C/C++ is straightforward when you stick to a distribution because there are people who are dedicated to packaging and deal with inconsistencies that individual library developers love to multiply.
- rcxdude 6y agoAnd anyone who tries to build your software on another distribution will feel the pain.
- MaxBarraclough 6y ago> I swear it's taken me longer to figure out how to build and include libraries with CMake than learn C I had a similar experience learning C++. Learning the C++ language isn't all that straightforward, but there are at least plenty of resources available. Build-systems felt much more like a black-box, until I'd hit them with a stick for long enough that they felt familiar. I started out with single-file C++ programs, invoking g++ manually with the appropriate flags for include directories and linking. I think that's probably the best way to go. Work up to proper build systems a little later on. Perhaps another good way to start off would be to just use an IDE, and ignore the build process while you're starting out.