While not a common task for most Windows users, compiling software under Linux isn’t uncommon at all. Reasons could be that the software simply isn’t designed for your distro of choice, the software isn’t available in your distro’s repository, or you might have hacked the code or are working on your own project. Users of “source-based” distros undoubtedly end up compiling more software than anyone else, even if it’s hands-off, such as with Gentoo.
I’ve been a full-time Gentoo user for about six years, and I’m sure I’ve compiled over 10,000 software packages in that time. What I don’t normally do is compile a thousand in a row. There have been times in the past where I’d end up recompiling my entire OS due to a GCC upgrade or something else, but never would the task ever complete without a single error along the way. Often, I’d hit roadblocks after every one hundred packages or so.
For various reasons, I decided to rebuild my entire Gentoo last night, which consists of 1,142 packages. Not all of these are from source, but most are – I’d estimate about 1% are binary. When I started the process, I expected the usual – a halt after a handful of packages. Either by extreme luck or to do with the fact that Gentoo is better than ever, I actually managed to rebuild the entire 1,142 packages without a single error. In the shot below, you can get a glimpse of the process as it neared its end (if you look close, you might see the humorous command I used to start the rebuilding process).
I didn’t track how long the entire process took, because quite frankly I didn’t expect it to go off without a hitch. I believe it was a solid twelve hours, though, which when equipped with a fast six-core Intel processor, makes me glad I didn’t run the process on a smaller box.
Thanks both to the fact that I had Konsole set to retain an unlimited number of lines and also that I was able to save the entire output to a text file, I was able to come up with some geeky numbers. The entire rebuilding process printed out a total of 1,421,432 million lines to the terminal, comprised of 8,389,674 words and 177,153,919 characters. In all, this results in ~170MB worth of raw text. And to think – this was all loaded into the terminal at once. Konsole sure handled that challenge with ease!