Compiling an application from source is the optimal way of installing software in linux. But authors may not put an uninstall rule in their makefile, so removing the software often becomes a hunt for all the directories in which the files of the application were installed.
Checkinstall is a nifty tool which can convert the compiled package into a slackware, RPM or Debian package, such that each installed file is kept track of.
This way you also do not need too compile the same software again whenever you reinstall your distro