10.1.1 About RPM Categories

RPMs can contain either binary or source packages.

A binary RPM is compiled for a particular target architecture such as x86_64, or noarch if its contents do not depend on the architecture as is the case for documentation and scripts. An example of a binary RPM might contain the GCC compiler and tools compiled for an Intel x86-64 target. Separate packages are required for each hardware platform that a package supports.

A source RPM provides the source code for binary packages and allows you to create a binary RPM.