views:

19

answers:

2

I'd like to read some text about the compile-link-load process of a executable. In general web-texts I found are not so detailed oriented as I'd like.

And no... I'm sure a book about compilers&linkers,etc it would be too much. I want a general knowledge especially how things are in practice.

Any reference would be appreciated... I'm sure there are some blogs that have excelent articles about this.

A: 

Ulrich Drepper's paper on libraries and executables on Linux is excellent.

sarnold
A: 

Only few programming language implementations are using linkers and loaders.

I don't know how could you go into deeper specifics here without sliting the linker and compiler open for a moment.

In C language implementations compiler outputs object files. Linker is a separate program that takes object files and outputs an executable file. Further the loader is a separate program that loads the executable.

Some compilers shortcut and invoke the linker directly.

Few compiler implementations are just outputting assembly files, which are further assembled and then linked.

There's not much more into it.

Cheery