OH: "you could use COFF for inputs to the linker, and ELF for the linked binary"
-
-
I guess static ELF isn't too bad, but shared images leave too much relocatable at load time IMO and have weird things like "copy exactly this many bytes into the executable"
-
hmm, I wrote a (restricted) .so loader as well, can you elaborate?
-
Like, the standard thing when your executable is non-PIE and it references a data symbol from a .so is to COPY the data to a fixed address in the executable and relocate the symbol in the .so, instead of going through the GOT/import table like you typically would on mac/windows
-
which dirties a bunch of memory, penalizes the code in the .so that has to indirectly reference even its own symbols, and hardcodes the size of objects in the .so
-
oh wtf this is wrong my loader was accessible exclusively via dlopen() so i didn't hit that
-
My case, when I was looking at the specs, I saw enough "weird stuff" with ELF SO loading that I mostly stuck with PE/COFF for my uses. PE is kind of an ugly format, but its handling of dynamic linking is straightforward. Granted, static-linked ELF is fairly straightforward.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.