5 ms·
Linux has a very stable userspace syscall ABI. About as stable as Windows, and much more stable than MacOS or the BSDs. I agree with everything else though.
by platinumrad 3mo ago
Linux has a very stable userspace syscall ABI. About as stable as Windows, and much more stable than MacOS or the BSDs. I agree with everything else though.
- iknowstuff 3mo agoNot relevant for user space applications written atop glibc/gtk/kde/qt
- est31 3mo agoYeah, Linux-the-kernel does have a stable ABI indeed, but this is not relevant for most ISV desktop software out there. In my comment above I was referring to Linux-the-OS (aka GNU/Linux). The userspace libs don't have a stable ABI at all, and this is a widely discussed problem. Other operating systems built on top of Linux-the-kernel don't have this problem, Android has a really stable ABI.
- alightsoul 3mo agoYou are describing the gnu c library I believe. That can be worked around with flatpak and appimage.
- mr_toad 3mo ago> The userspace libs don't have a stable ABI at all, and this is a widely discussed problem. And DLL hell isn’t? Or the shambolic mix of 32 and 64 bit libraries on Windows? Anyway, desktop binaries are increasingly rare for business software.
- iknowstuff 3mo agoI dont think dll hell is a problem anymore https://en.wikipedia.org/wiki/Side-by-side_assembly https://en.wikipedia.org/wiki/Side-by-side_assembly
- ammo1662 3mo agoFor user space applications, Win32/Windows is the most stable ABI on Linux, via Wine/Proton.
- whs 3mo agoMost people don't directly call Linux syscalls though but go through glibc. It might even be unavoidable if you want to ship desktop apps as the library will use it. If it's that easy there wouldn't be Python's manylinux, flatpak base packages or Steam Linux runtime