Industrial-Sized Deals TextBTS15 Shop Women's Handbags Learn more nav_sap_SWP_6M_fly_beacon Deradoorian $5 Off Fire TV Stick Subscribe & Save Shop Popular Services gotS5 gotS5 gotS5  Amazon Echo Starting at $99 Kindle Voyage Metal Gear Solid 5 Shop Back to School with Amazon Back to School with Amazon Outdoor Recreation STEM Toys & Games
Software Build Systems: Principles and Experience and over one million other books are available for Amazon Kindle. Learn more

Software Build Systems: Principles and Experience 1st Edition

6 customer reviews
ISBN-13: 978-0321717283
ISBN-10: 0321717287
Why is ISBN important?
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Sell yours for a Gift Card
We'll buy it for $2.06
Learn More
Trade in now
Have one to sell? Sell on Amazon
Buy used
Buy new
More Buying Choices
10 New from $53.96 17 Used from $40.42
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

InterDesign Brand Store Awareness Rent Textbooks
$53.96 FREE Shipping. Only 1 left in stock (more on the way). Ships from and sold by Gift-wrap available.

Frequently Bought Together

Software Build Systems: Principles and Experience + Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler))
Price for both: $96.87

Buy the selected items together

Editorial Reviews


“This book represents a thorough and extensive treatment of the software build process including the choices, benefits, and challenges of a well designed build process. I recommend it not only to all software build engineers but to all software developers since a well designed build process is key to an effective software development process.”

Kevin Bodie, Director Software Development, Pitney Bowes Inc.


“An excellent and detailed explanation of build systems, an important but often overlooked part of software development projects. The discussion of productivity as related to build systems is, alone, well worth the time spent reading this book.”

John M. Pantone, Objectech Corporation, VP, IT Educator and Course Developer


“Peter Smith provides an interesting and accessible look into the world of software build systems, distilling years of experience and covering virtually every type of tool in the build engineer’s toolbox. Well organized, well written, and very thorough; I would recommend this book to anyone with a build system under their responsibility.”

Jeff Overbey, Project Co-Lead, Photran


Software Build Systems teaches how to think about building software. It surveys the tools and techniques for building software products and the ways things go wrong. This book will appeal to those new to build systems as well as experienced build system engineers.”

Monte Davidoff, Software Development Consultant, Alluvial Software, Inc.

About the Author

Peter Smith is principal of Arapiki Solutions, Inc., a consulting company that provides technical leadership for introducing new tools and methodologies for improving software development productivity. Smith specializes in the planning and deployment of software development infrastructures together with best practices for utilizing them.


Best Books of the Month
Best Books of the Month
Want to know our Editors' picks for the best books of the month? Browse Best Books of the Month, featuring our favorite new books in more than a dozen categories.

Product Details

  • Hardcover: 624 pages
  • Publisher: Addison-Wesley Professional; 1 edition (March 21, 2011)
  • Language: English
  • ISBN-10: 0321717287
  • ISBN-13: 978-0321717283
  • Product Dimensions: 7.3 x 1.4 x 9.9 inches
  • Shipping Weight: 2.5 pounds (View shipping rates and policies)
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (6 customer reviews)
  • Amazon Best Sellers Rank: #2,205,326 in Books (See Top 100 in Books)

More About the Author

Peter Smith is principal of Arapiki Solutions Inc., a software consulting company based in Vancouver, Canada. He enjoys any type of project that helps an organization become more efficient. As a project manager, technical lead, software architect, or "guy who writes code", he has worked on a number of development tool/infrastructure projects. The goal of these projects is to help a company automate their existing workflow, increase their efficiency, or improve the quality of their work.

In 1998, Peter obtained his PhD from the University of British Columbia, while enjoying the ocean and the mountains of Western Canada. He can be contacted via his website:

Customer Reviews

Most Helpful Customer Reviews

15 of 17 people found the following review helpful By B. C Ladd on May 31, 2011
Format: Hardcover Verified Purchase
Advertising "Principles and Experience" with software build tools, the
author demonstrates a surprisingly sophomoric depth of
understanding. Most of the book is presented at a very high level with
limited practical presentation.

Chapter 08 discusses the SCons tool with a section on debugging bad
builds. The --debug=presub command-line switch is introduced and
output presented. A particular environment variable is mentioned and
then some portion of the list of all environment variable definitions
in SCons is printed. The actual environment variable presented is
never found in the list, the result is never plugged into the template
command-line, and the "problem" is never debugged. The level of
understanding seems very much that of someone who has run the on-line

The feeling of reiterated tutorial continues in Chapter 10 on
Eclipse. I can figure out the panes of the workspace or else I can
fire up the Guided Tour that ships with the product. There is no need
to spend several pages on helping me figure out where source code is

Chapter 06 focuses on GNU Make. The idea of a .flags file is mentioned
as a way to capture dependencies on command-line flags. Where is an
example? Is it better practice to have a .flags file per directory or
per source file? How do .flag files interact with the number of file
reads done by a build system (the topic of Chapter 19 when talking
about speeding up a build)?

There are a handful of editing errors and another, more annoying,
handful of technical errors. There is a discussion of running gdb
(why, in a book on building, do I get a tutorial on gdb?
Read more ›
2 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
4 of 4 people found the following review helpful By minghua on November 8, 2011
Format: Hardcover
A Gap-Filling Book for Software Developers Too

Build system are often viewed as merely a script to compile the code. However there are much more to it. Read this book you'll find out. As an editorial review says, this book is also for developers in addition to build engineers.

As the book starts with, a survey showed that it is common developers losing 20~30% productivity due to build related problems. My personal estimate, at one of my previous work we spent more than 30% of time dealing with build breakages. Sometimes the problems are caused by the build system itself, some other times they are due to misuse of the system. It's worth for developers to learn the build system thus to avoid messing up with the build system.

For large software it is very difficult to figure out the dependencies among the components. To my view, if it is a C program, the only place the complete dependency information can be found is in the build system. Figuring out dependencies helps developers to better design/code/debug their software. To do so you'll have to know about the build system, or you may even need to fix the build system so you can get the information dumped for you.

I use code generation in my coding practice so that I can manage more logic in code and avoid tedious repetitive work [see Martin Fowler's DSL book Domain-Specific Languages (Addison-Wesley Signature Series (Fowler)) for more on this topic]. I also generate tests from the source code. To generate code the triggers have to be incorporated into the build system. Had I read this book I would have done my work more effectively.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Max Timchenko on May 9, 2012
Format: Hardcover
This book is a decent introduction to the world of build systems. Overall I expected more depth from it, and felt I barely got my money's worth, but it could be perfect for someone with less experience with complex build systems who wants to learn more about the field or got tasked with choosing and implementing a build system for a project.

It starts with a high-level discussion of concepts that are common across build systems. Then it goes into an overview of five common build systems - make, scons, cmake, Ant and the GUI-based Eclipse. Generally I felt this is the weakest part of the book as it does not go into depth with any of those tools, but it is useful if one wants to compare how several systems handle a common, simple scenario, and the praise/criticism/evaluation section towards the end of each tool's description is a nice summary. For a detailed manual of one of the covered build tools, tool documentation and other in-depth books on separate tools are a far better choice.

Part III, "Advanced topics", is a misnomer - it should be called "Beyond the basics". Once again the discussion becomes more abstract and covers dependencies and related issues, "metadata" (any products that are not the final executables - documentation, tests, etc.), managing tools, and towards the end two topics that are the most important - how to improve build speed and manage build size. I would not call any topic discussed to actually be "advanced" - that would be, for example, an in-depth analysis of an existing complex make-based build framework, or a careful dissection, with reasoning and trade-offs, of a big build system of an existing open source project, none of which are to be seen in this book.
Read more ›
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Set up an Amazon Giveaway

Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
Software Build Systems: Principles and Experience
This item: Software Build Systems: Principles and Experience
Price: $53.96
Ships from and sold by
Want to discover more products? Check out these pages to see more: software development, programming languages, software testing