I Compiled the Linux Kernel myself for the first time
It's not really a big deal, but I am currently writing this using a linux kernel I compiled from source, which certainly feels like an accomplishment. The Arch Wiki has made the process fairly easy to follow. I just took the stock Arch Linux configuration without changes for now.
The most important part of this is of course that I have the option to do that, to take the source code of this incredible project and build my own kernel binary.
As a student I wasted so much time mucking around with flags and settings in Gentoo. It definitely wasn't pointless since I learned so much, but I didn't need to sit there and watch it compile as much as I did.
It was pleasing to watch though, just like defrag in Windows.
But I also didn't had the time to create new kernels. My PC is too slow at the moment. hahaha. Just wait.. maybe I will get the latest threadripper. Instead of the first -gen i7 from 2008.
This is the best part of free/libre/open-source software. Even if you would never want or need to compile software yourself, the fact that you have the option to do so, and the opportunity to learn how the software works, is what makes FLOSS superior to proprietary software IMO.
I just compiled Handbrake from source a few minutes ago, and I know how you feel. Best of luck in your future code-compiling endeavors.
I compiled my first Linux kernel back in the mid 90s, mostly on 386 and Dec Alpha hardware, interesting enough both were not that much slower than what you mentioned, I think the alpha (a measly 21066) took about 40 minutes. If you had asked me back then, Iâd probably have imagined a minute or two, 30 years later. Guess it says something about how much larger the Linux kernel has become.
not OP but on my i7 7700K a fully-featured kernel takes about 2 hours or so to compile. if i minimize the kernel to only the modules i need i can get it down to 20-30 minutes (clean). incremental compiles barely hit 5-10 mins
overall not a big deal, especially compared to something like firefox (or god forbid chromium). or gcc with pgo (which is technically cheating because it compiles itself 3 times if you enable pgo)
It's not the compiling that kernel is hard - ironically, it's one of the easiest things in the whole ecosystem to compile, got great tooling. It's breaking down the mental barrier of something that you thought would be hard, but turns out to be completely within your grasp. Great work, keep it up, and never be afraid to keep pushing onwards.
I didn't dare try to recompile it myself until I saw someone do it in a Youtube video. Changing the config is literally an interactive menu with labelled options and buttons. And your distro almost certainly includes a copy of the settings it uses, so you can just change a few values and keep everything else the same.
Nice! After the first time you get the hang of it but keep in mind, If you do make your own config you will have to recompile your kernel for any hardware that isn't automatically enabled in the config like graphics, touchpad, tablets, and other peripherals you will plug into your computer. Reading up on what hardware you have helps a lot but I still manage to forget something when I have to create my own config. Thankfully you can just transfer your config to the next kernel instead of creating it all over again.
Nice! I also compiled the kernel multiple times when I used Gentoo back in mid 00's. It may not be a big deal as such, but I feel kind of good being able to say I've done it.
I installed gentoo from stage 1 or maybe 2 back in the day... it compiles to compiler to compile the rest of the build process and then compiles the kernel and base... quite fascinating but it took about 3 hours on the hardware I was using.
That's certainly nothing to shake a stick, OP! Very well done. The last time I compiled a kernel was back in 1999 with Slackware. If I remember correctly it was a version previous to 7.
It took roughly 10-15 minutes on a Ryzen 5800X with 32GB RAM. I have compiled other programs before, but none nearly as large and notable as the kernel. I am in fact very close to getting a computer science degree, but that is in no way required to be able to do this. If you are able to follow the wiki-page I linked, you can do it too.