O'Reilly logo

C++ All-In-One For Dummies®, 2nd Edition by Jeff Cogswell, John Paul Mueller

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

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 ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required