this post was submitted on 29 Sep 2024
263 points (93.4% liked)

Programmer Humor

19480 readers
195 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 

Mindustry dev has had enough

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 60 points 1 month ago* (last edited 1 month ago) (6 children)

Maven and Cradle might be terrible, but C and C++ have fucking nothing in terms of dependency management. Even C# has something that few people use, but it has something. C and C++ are such a shit show to build. It's so bad they had to invent languages to build them and they regularly fuck up (CMake, make, bison, scons, meson, ...).

Pull a C or C++ project on a distro or environment and try to build it and you have to dive in the abyss of undeclared dependencies. And good fucking luck with glibc and glib dependencies. If the dev doesn't know which version they were actually using, it's up to you to find out. Fun for the entire family!

Anti Commercial-AI license

[–] [email protected] 29 points 1 month ago* (last edited 1 month ago)

To be fair, C predates dependency hell. It was either there or it wasn't. C++ has less of an excuse, but it was just object oriented concepts taped to C so it's no surprise it was also missing dependency management.

Now with cmake, gnu-make, meson, gradel, and the world of metabuild systems that wrap those, nothing will change. It it does, it might as well kick start world war 3.

[–] [email protected] 5 points 1 month ago

You forgot automake.sh to the list of ways to solve the problem that still suck

[–] [email protected] 5 points 1 month ago (1 children)

Even C# has something that few people use, but it has something.

Huh? Are you claiming few people use NuGet?

[–] [email protected] 1 points 1 month ago* (last edited 1 month ago)
[–] [email protected] 5 points 1 month ago

Rust and Cargo enters the room.

[–] [email protected] 4 points 1 month ago

I remember having to use something called Conan once, which was also quite broken. Though the devs were fast to respond with fixes and workarounds.

[–] [email protected] 3 points 1 month ago

That's odd... all the projects i use document their install process fairly well, most of them using either cmake or autotools.

The only "terrible" scenarios i occasionally encounter is, yes, trying to automate the android toolchain - i blame Google though, not C/C++ as the Android toolchain is intentionally designed to be used with Android Studio and trying to veer of that is increasingly harder.

Even cross-compiling for windows isn't that bad.