[ros-kernel] ReactOS 0.3.0 Release Plans

Filip Navara xnavara at volny.cz
Sat Sep 18 10:37:49 CEST 2004


Barubary wrote:

>>> - *Relocatable EXEs*
>>
>>
>> Damn, where did you get this? To my best knowledge binutils support 
>> relocatable executables.
>
>
> I never found a way, and neither did the ReactOS team.  binutils seems 
> to assume that EXEs are never relocatable, while DLLs always are.  
> Both statements are false, though a non-relocatable DLL isn't very 
> useful.

I'm not going to say that there aren't problems with it, but BinUtils 
are able to generate relocatable executables and there are at least two 
methods to do that:
1) Passing "-pie" and "--image-base" base options to "ld" and then 
manually (or using some tool) remove the DLL flag from the PE header. 
Actually it's a bug that the DLL flag is ever placed in the PE header, 
but it's pretty easy to workaround it. Also for the NTOSKRNL case in 
ReactOS we really don't care if there is the DLL flag as the FreeLoader 
doesn't check it (only the user mode loader does that... (I'm not sure 
if this is actually implemented in ReactOS)).
2) Using a linker script.
I have never tried to use the second method, but I was told it's 
possible. For the first method I can supply the tool if needed.

Regards,
Filip


More information about the Ros-kernel mailing list