Ähm, nein (zumindest, wenn du von FPC sprichst). Unter Windows wird -fPIC ignoriert (da sollte auch eine entsprechende Warnung vom Compiler generiert werden) und bevor du fragst: ich hab das im Compiler Quellcode verifiziert. Alle vier Windows Targets (i386-
win32, x86_64-win64, arm-wince, i386-wince) setzen das Flag
tf_no_pic_supported
. Selbst, wenn du unter Windows PIC Code generieren würdest, kämest du um Relocations allerdings nicht herum, da dies ja auch die restlichen Daten im Image betrifft.
Und unter Linux ist der wichtige Punkt, dass Linux nicht reloziert. Ein ELF Image hat keine Relocation Table, also kann der dynamische Linker auch nicht wissen, was er wohin verschieben muss.
Unter Linux kommt man um PIC quasi nicht herum, während du unter Windows quasi um Relocation nicht herum kommst.
Gruß,
Sven