Question

What is the difference between COFF (Common Object File Format) and ELF (Extendable and Linkable Format), other than they being for distinct platforms??

If I have C Compiler, the Object files that my Linker in the toolchain will receive is of COFF type, on Windows. If its linux, it will be ELF.

What is the thing that makes them two different things? Firstly I thought about the Executable file it(Linker) will generate depending upon the type of Object file it received. Is it so?

Was it helpful?

Solution

What is the thing that makes it two different things?

It's the same difference as that between an XML file and a GIF file -- they have completely different rules about their internal structure. The former must start with <?xml version=..., the latter with a string GIF87a or GIF89a.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top