A self-extracting archive is useful; it allows you to extract archives without additional software. All you have to do is double-click the archive and it will automatically extract the files within.
Linking is the process of combining various pieces of code and data together to form a single executable that can be loaded in memory. Linking can be done at compile time, at load time (by loaders) ...