Categories
Linux Mastering Development

What is the linker and what is the loader in dynamic linking?

CSAPP (3ed) says in p733 that 7.9 Loading Executable Object Files To run an executable object file prog, we can type its name to the Linux shell’s command line: linux> ./prog Since prog does not correspond to a built-in shell command, the shell assumes that prog is an executable object file, which it runs for […]

Categories
Linux Mastering Development

What is “shared executables”?

Stephen Kitt wrote in https://unix.stackexchange.com/a/448943/674 ld.so is a shared ELF object, but it doesn’t require an interpreter (it has no .interp entry); this is typical of libraries (shared executables always require an interpreter; otherwise they’re static, not dynamic). Is an ELF object file a "shared executable" if and only if it has an .interp entry […]