Role of linking, object files and executables
- by Tim
For a C or assembly program that does not require any other library, will linking
be necessary? In other words, will conversion from C to Assembly and/or from Assembly to an object file be enough without being followed by linking?
If linking is still needed, what
will it do, given that there is just one object file which doesn't
need a library to link to?
Relatedly, how different are object files and executable files,
given that in Linux, both have file format ELF?
Are object files those ELF files that are not runnable?
Are there some executable files that can be linked to object files?
If yes, does it mean dynamical linking of executables to shared
libraries?