user923005 said:
GCC is totally irrelevant as far as linking is concerned. The speed
of linking for PCC or any other compiler will not be any different at
all, since both PCC and GCC are going to perform exactly the same link
step using exactly the same linker.
If they do that, it would be really stupid.
The linker of GNU is very slow.
But I am not saying that GCC is responsible for the flaws of ld,
even if is in the same tool chain. It was just a remark about the
speed of the link step.
The internal structure of that linker is quite involved, doing several
passes to find constructors, then putting them in an automatically
generated C file, then compiling that (yes, they compile C code
within the link step!!) and then (and only THEN) linking the whole
mess.
The speed of gcc *is* important within the linker since the
linker compiles C code when linking.
I was completely surprised when I discovered that.
The link step is performed by the
operating system's linker, and so the speed of the link won't change
at all unless a compiler vendor supplies its own linker. Microsoft
does that, but then again, they also wrote the operating system for
their compiler so no great surprise there.
The OS supplies no linker under windows, That's why I had to write one.
I believe that this has all been explained to you before. I think
that you are deliberately being thick here.
You take a remark as "ld is slow" and just suppose that I am blaming
gcc. No I am not. But... see above