1.2.5. LinkageΒΆ
All components of the runtime system can be linked together in 3 different ways:
- Static Link: All components are linked together to one executable
file (e.g. *.exe). This executable file is closed, so no additional component can be added afterwards to this package.
- Dynamic Link: Each component is linked here separately to a
dynamically loadable module (e.g. *.dll or *.o). The components are loaded dynamically during startup of the runtime system. So at every start it can be decided, which components are to be loaded and linked to the runtime system.
- Mixed Link: This is a mixture of both issues above. The basic
components are linked statically together to one executable file, but can get extended by dynamically loaded components.
How the linkage is done can be specified with compiler flags:
STATIC_LINK: For static linking
MIXED_LINK: For mixed linking
- DYNAMIC_LINK (or nothing): This is the default, if none of the two
defines above is set
The source code of the components is identical in all linkage models. How this is realized is described in the next chapter.

