Most packages provide a test suite. Running the test suite for a newly built package is generally a good idea, as it can provide a nice sanity check that everything compiled correctly. A test suite that passes its set of checks usually proves that the package is functioning mostly as the developer intended. It does not, however, guarantee that the package is totally bug free.
Some test suites are more important than others. For example, the test suites for the core toolchain packages -- GCC, Binutils, and Glibc (the C library) -- are of the utmost importance due to their central role in a properly functioning system. But be warned, the test suites for GCC and Glibc can take a very long time to complete, especially on slower hardware.
Experience has shown us that there is little to be gained from running the test suites in Chapter 5. There can be no escaping the fact that the host system always exerts influence on the tests in that chapter, often causing weird and inexplicable failures. Not only that, the tools built in Chapter 5 are temporary and eventually discarded. For the average reader of this book we recommend not to run the test suites in Chapter 5. The instructions for running those test suites are still provided for the benefit of testers and developers, but they are strictly optional for everyone else.
As you progress through the book and encounter the commands to run the various test suites, we'll guide you on the relative importance of the test suite in question, so that you can decide for yourself whether to run that one or not.
Note: A common problem when running the test suites for Binutils and GCC is running out of pseudo terminals (PTYs for short). The symptom is an unusually high number of failing tests. This can happen for a number of reasons. Most likely is that the host system doesn't have the devpts file system set up correctly. We'll discuss this in more detail later on in Chapter 5.