2 ms·
The binary compatibility exists, it's just that the ecosystems have too many differences. e.g. distro A may ship libfoo.so.1.5.3 and distro B libfoo.so.1.3.2 an
by arp242 3y ago
The binary compatibility exists, it's just that the ecosystems have too many differences. e.g. distro A may ship libfoo.so.1.5.3 and distro B libfoo.so.1.3.2 and distro C ships libfoo.so.2.0.0
Other than that you can run a binary for distro X on distro Y without any problems, and "Linux binaries" from the 90s should also still work as such today (as in, the kernel will run them). I frequently run binaries from Debian packages in spite of not using Debian or anything derived from it and that usually works without any tinkering, and when it doesn't you can usually make it work by also fetching a library or two from Debian.
This is also a problem on Windows, because your Windows 95 binary may also not work because of issues like this, depending on exactly how it's compiled, what it does, etc.
Static linking solves many of these issues, but also has its own set of downsides, and it's an old discussion. In general, I'm in favour of this though. Some people are vehemently opposed to it with an aggressive passion which means that in practice support for it isn't that great.