Quotes of the week
Quotes of the week
Posted Mar 23, 2012 18:13 UTC (Fri) by khim (subscriber, #9252)In reply to: Quotes of the week by jsanders
Parent article: Quotes of the week
The developer could upload some source and it would build it against a whole set of distributions.
Very few developer will want to send their precious sources anywhere. When we debugged nasty bug in Unity 3D they only gave access to the sources to few select developers in our team and then only to a limited subset, some libraries were offered as binary only. The build required use of both Linux and MacOS¹ and of course the idea that they need to change it to support our nascent port was not even considered.
Unfortunately in linux, the libraries and apps are so fast moving and entwined, I'm not sure how this could work with distributions as diverse as RHEL and the latest ubuntu/fedora.
it's not a rocket science. The problem is not a speed of development. The problem is general attitude. As long as “you only need to recompile your program” is perceived as acceptable solution to anything Linux desktop will not go anywhere.
It's possible to do: Linux kernel is developed by these rules as well as GLibC and X Window System. Even some higher-level libraries are developed in this fashion (namely GTK and Qt). But somehow DE developers feel they are special and may play by different rules. Which is crazy because they obviously develop something which needs such rules more then anything else on Linux desktop.
──────────
¹) I think they fixed this and now you only need MacOS to build everything, but I'm not sure.
Posted Mar 23, 2012 18:33 UTC (Fri)
by dgm (subscriber, #49227)
[Link] (3 responses)
Posted Mar 23, 2012 20:50 UTC (Fri)
by khim (subscriber, #9252)
[Link] (2 responses)
And… what I'm supposed to see there? As you can see WP8 predates GLibC so what exactly this example is supposed to prove? I doubt it. Before GLibC 2.1 came along in the end of 2000th Linux ABI was a mess even on the lowest level. NPTL (introduced in March 2006) was also quite disruptive (formally it kept the interface stable, but it broke some non-POSIX-compatible tricks which program used with LinuxThreads). Still this is far cry from the rest of the Linux desktop.
Posted Mar 25, 2012 23:45 UTC (Sun)
by dgm (subscriber, #49227)
[Link] (1 responses)
Posted Mar 26, 2012 6:57 UTC (Mon)
by khim (subscriber, #9252)
[Link]
Sure. If don't use GLibC then you don't benefit from it's excellent compatibility record. Not fully. WP8 for Windows includes some 16bit components and thus does not work in x64 version of Windows. But yes, Microsoft is significantly more serious about binary compatibility while in Linux it all ends with GLibC and X11R6 (again: previous versions are not binary compatible). You can not go back and fix former mess without time machine thus obviously I'm not claiming you can create stable ABI which will support all the program written before the introduction of said stable ABI: this is theoretically possible but practically unfeasible. But you can create stable ABI which support most of the programs (and all programs obeying the specs) written after the introduction of said stable ABI. This is what GLibC, XLib, GTK+ and few other libraries are doing, but what the rest of Linux desktop does not do.
I'm not so sure about X11 and glibc. Look at this for an example. It's the instructions for installing Wordperfect 8 on Linux. It's a mess. I'm sure Wordperfect developers could have done it a little bit better, of course.
Quotes of the week
Quotes of the week
Look at this for an example.
After unpacking (and reading the Readme file), you'll have to furnish the dynamic libraries WP 8.0 requires: ld-linux.so.1.9.*, libc5 (any version from 5.3.12 onwards) with matching libm.so.5.*, and a set of X11 backwards-compatibility libraries compiled for libc5 X11 clients (libXt.so.6, libX11.so.6, libXpm.so.4, libSM.so.6, and libICE.so.6).
I'm sure Wordperfect developers could have done it a little bit better, of course.
Quotes of the week
Quotes of the week
The point is: no binary compatibility, you need to build your own base libraries.
While I'm not sure, I'm pretty confident I could install WP8 on Windows without much hassle, even today.