Years ago, I used to frequently build GNU Emacs directly from source code. At the time, I was a member of the UNIX development team, so most of the necessary libraries, including graphical development libraries, were also present, so it was a very simple exercise.
I tried to do it today, and it took me 5-6 attempts just to run the ./configure step because very few of the necessary libraries to build the code were already present on the system. The good news is that configure would list what it was “looking for” in order to build specific things, and the config output also said “yes” or “no” depending on whether specific things were available. Once I added a sufficient number of libraries to get a successful compilation, I tried it out.
Initially it works and puts the image in the source sub-directory where the downloaded image was placed. Adding sudo make install puts the installed image into /usr/local/bin and the other libraries into various subdirectories in /usr/local. This can be modified to put the result wherever you want, or you can leave it in your own working directory structure.
Anyway, I mention this in case anyone would like to get some practice compiling code and installing it. Even with the multiple iterations it took, it wasn’t that difficult. The prerequisite, of course, is to “understand” whatever the ./configure script displays and saves. If you can follow it, the result is that you can build your very own copy of a very powerful editing tool. You need not choose this one; there are a LOT of GNU applications that you could build, assuming you have any interest at all in building code from source code. If not, ignore all of this. If you are interested, take a look at http://savannah.gnu.org/projects/emacs/ or http://www.gnu.org/manual/blurbs.html to get a description of many GNU projects that can be built from source code.