dynamic linking
Joining a program to the shared libraries it uses when the program starts (or later), instead of when it is built.
Dynamic linking defers part of symbol resolution and relocation to load or run time: the executable records which shared libraries and symbols it needs, and the dynamic linker loads them and fills in the addresses.