|
|
Log in / Subscribe / Register

Shared libraries

Shared libraries

Posted Nov 29, 2025 16:32 UTC (Sat) by anselm (subscriber, #2796)
In reply to: Shared libraries by khim
Parent article: APT Rust requirement raises questions

The critical difference between distro's “steaming pile of packages” and proper OS is an SDK: something that you can use to build your binary and, most importantly, target different versions of OS simultaneously.

Chances are, if you're developing software for Linux you probably want to target more than one Linux distribution, anyway. At that point, relying on an “SDK” provided by any one distribution likely wouldn't be enough – it would be weird to expect the “Debian SDK” to spit out RPM packages for RHEL or openSUSE, after all, and vice-versa –, and using CI to build more than one flavour of your code doesn't look all that unreasonable anymore. Been there, done that; it's not exactly rocket science.


to post comments

Shared libraries

Posted Nov 29, 2025 16:48 UTC (Sat) by khim (subscriber, #9252) [Link] (1 responses)

> Chances are, if you're developing software for Linux you probably want to target more than one Linux distribution, anyway.

Why is that a problem? Go back quarter century… Windows 9x and Windows NT were significantly more different than different Linux distros… yet creating one binary that worked on both was the norm. Supporting Windows 3.x (with Win32s) was harder, but still possible.

These days that support is often done with help of Docker and, now, Flatpacks. Not sure how well it works with Flatpacks, but Docker for server packages works reasonably well.

> it would be weird to expect the “Debian SDK” to spit out RPM packages for RHEL or openSUSE, after all, and vice-versa

Yes, that's why people invented something that works for both. Many things, in fact. If GNU/Linux couldn't give them usable SDK then they would pick someone who would… Valve, e.g.

But then distros spent decades punishing them for that.

The only thing that achieved is the development of open source ecosystems that consider distros their enemy, or, at best, “the necessary evil”.

Rust just have turned into reveal show because distros have come to the Rust developers with demands then need to fulfill… and got back the question they haven't expected at all: “why should we care?”.

They have gotten certain answers, ultimately, via the Rust-in-Linux route: certain developers want to use distro-provided version of Rust and that means certain features needs to be included in Rust at certain time… that got acknowledgement, even if not full acceptance. Everything else? Distros have created the problem for themselves by introducing some strange arbitrary rules, distros may decide how to resolve them… developers of most Rust packages are just too busy doing useful work with people who don't invent random crazy hoops, they don't have time for the distro-invented circus.

Shared libraries

Posted Nov 29, 2025 17:39 UTC (Sat) by pizza (subscriber, #46) [Link]

> The only thing that achieved is the development of open source ecosystems that consider distros their enemy, or, at best, “the necessary evil”.

Those ecosystems decided that support for non-Linux environments was required, so they had to take a different approach.

If you have to reinvent the wheel completely anyway, why not just use that new wheel for Linux systems?

The smarter ones incorporated the lessons learned from Distros, but the not so smart ones (Python comes to mind) are still paying the price.

But as the saying goes, with sufficient thrust even a pig will fly. And thanks to the AI craze Python has a *lot* of well-funded thrust.


Shared libraries

Posted Dec 1, 2025 18:54 UTC (Mon) by mathstuf (subscriber, #69389) [Link]

Eh, we make tarballs that extract to a standard installation prefix. The binaries are relocatable, so we just need to make sure we build on a suitably old distro (currently CentOS8) and document libraries we assume exist (X11, some libxcb libraries, etc.). Works well enough. But yes, if you don't want to ship everything above the "bare bones", you'll need a per-distro package.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds