Never Break Backward Compatibility

Some weeks ago I asked both on Twitter and Google+ about a problem I had. For some reason I was not able to compile an old Linux kernel version (2.6.27) with the version of GNU make included in the last two releases of Ubuntu (14.10 and 15.04). I didn't have much time, so after some research and some failed tries, I used an old Debian Wheezy.

(By the way, this operation caused me a problem on production but this is another story.)

After being able to build the kernel, I've had the chance to investigate deeply about the problem until I found this explanation:

WARNING: Backward-incompatibility!

Are You Joking?

One of the most used tools from Linux developers all around the world simply cannot do this. This may impact on thousands of unmaintained projects. And also for maintained ones (such as Linux) it can be quite troublesome.

I know that backward compatibility is always a ball and chain. Nevertheless its something that is expected by users. In this case, it would be enough to add a command line flag (I suggest -Z) to enable the old behavior.

Anyway, if you experience the same issue and you don't have an old distro, I suggest to download the source code of version 3.81 of make from the GNU ftp archive and build it by yourself.


Cover image by Anthony Easton taken from Flickr licensed under the Creative Commons Attribution 2.0 Generic license.

Luca Sommacal

Luca Sommacal

Italian developer (mainly in C for embedded platforms), Linux learner, addicted to rock music, history, science and few other things. Follow me on Twitter

comments powered by Disqus