Appendix A. Automating Your Programs with Makefiles

In This Appendix

  • Compiling and linking your programs

  • Automating your work

  • Implying work with inference rules in your Makefiles

  • Getting the most out of Makefiles

Since the beginning of time, or at least since the beginning of the Unix operating system, programmers have used a utility called make to build their programs. And it's still often used today. The make utility looks at which of your source-code files have changed and decides what needs to be compiled and built.

Development tools, such as CodeBocks and Microsoft Visual C++, don't require you to use a make utility because they have such decision-making features built in. But many free compilers use them. Fortunately, the process for creating and using make files is no longer as difficult as it once was. Third-party libraries come with make utilities (such as the Boost library's Boost Jam and Boost Build; see Minibook VI, Chapter 3) that greatly reduce the complexity of creating and using make files.

Before using make, understanding the compile and link processes is important. In this appendix, we cover the compile and link processes and advise how to use make to automate your building. Please note, however, that make itself is a complex tool, and enough information is available about it to fill an entire For Dummies book. Therefore, we suggest that you don't worry about mastering make and what are called Makefiles. Instead, read this appendix so you understand them. Then, if you ...

Get C++ All-In-One For Dummies®, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.