What does Building mean? In C/C++ context, it can be plainly Compiling and Linking
But it is a little more than that. If a C source file changes, only that file gets compiled. If a C header file changes, every source file that includes it (directly or indirectly) gets compiled.
But, in true context of a build, it is not just compiling and linking. It normally also involves creating libraries/DLLs/Shared Objects. In larger projects, running static code analysis tools, generating API documentation, running unit tests, code coverage tools can also be part of the build process.
Eclipse can cover all the variations of such builds.
Mainly, Eclipse supports 2 types of builds
These are the topics discussed in further detail:
For some common steps, that are not part of normal build process, Eclipse also has a feature to add External Tools.