Combining all necessary subroutines from external libraries into one executable file when compiling an application. When running, the application is not dependent on any of the operating system's auxiliary software components, known as "DLLs" in Windows and "shared objects" in Mac and Unix. Therefore, changes in these auxiliary modules do not affect the application for better or worse. Contrast with
dynamic linking. See
runtime library.