News for hackers. Stuff that matters.
Re:The abysmal state of GNU/Linux and a case against shared ... by packetlost on Monday October 14, 2024 @08:26PM (#41843694)
Most applications do not use CUDA (I assume that's what you're referring to) and the ones that do only need to pull in the runtime (libcudart_static, in this case) which is nowhere near as big. You don't link all of LLVM into a CUDA application lol
Re:The abysmal state of GNU/Linux and a case against shared ... by AshamedCaptain on Tuesday October 15, 2024 @11:43AM (#41849741)
For the record any application using shader definitely needs "all of LLVM", and most Gtk+ applications are using shaders due to the ill-conceived notion that GPUs are faster at 2d acceleration. So yes, all GUI apps are linking in all of the graphics driver and all of LLVM.
Re:The abysmal state of GNU/Linux and a case against shared ... by packetlost on Tuesday October 15, 2024 @12:33PM (#41850325)
Right, but they don't do so using the default loader, it looks like they likely do it via dlopen or similar runtime dynamic linking. If you compile the binaries statically, it wouldn't effect that.

I did a little math using a common GTK application as an example: nautilus. Using `ldd` and several shell utilities, if you were to statically link it it clocks in at around 80MB in binary size, but that would be worst case without LTO.

FWIW I think graphics stacks are one of the few places where dynamic linking is still highly relevant.