One thing which may be helpful to understand is the nature of a project/makefile: Basically, such a thing is merely a file specifying the arguments to be passed to the compiler and linker in order to build all the source code.