Makefile Resources

Why do we need Makefiles?

When creating code, you might end up with anywhere between one file to discerningly large numbers of files in your project or database. By brute force, you may be able to compile and build each of the files and have them ready for use. Sometimes, you might have files that you have already compiled and do not need to compile again. Makefiles serve as the solution to these issues through generating a protocol that builds a set of commands that are designed to build the infrastructure of your entire project using shell scripting.

 

Resources

If you’re interested in just knowing how to use Makefiles and how they work on a high level, these links will be helpful:

http://mrbook.org/blog/tutorials/make/

https://www.gnu.org/software/make/manual/html_node/Introduction.html#Introduction

 

However, if you’re interested in learning the intricacies of Makefiles, here is a very in-depth guide by GNU. It covers the make function and breaks down Makefiles:

https://www.gnu.org/software/make/manual/make.html

 

Also, since Makefiles are typically used on large scale applications in industry or large projects, Makefile automation can be quite significant in saving time and costs. The following are Makefile automation references:

https://swcarpentry.github.io/make-novice/reference.html