Is there a way to build a non-PIC shared library with l4env?

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Oct 6 23:27:00 CEST 2011


On Fri Oct 07, 2011 at 04:34:41 +1300, Valery V. Sedletski wrote:
> On Fri, 07 Oct 2011 01:20:19 +1300 (MSD), Valery V. Sedletski wrote:
> 
> >Maybe, I must build a custom libloader.s.so version which loads at different address? Or maybe, there is a
> >legal way to move libloader.s.so to another address? -- I know that, for example, thread lib heap can be moved 
> >from its default position by changing a variable which is defined as a weak symbol. So, maybe it could be done 
> >likewise? Help, please..
> >
> 
> A correction: when using the dynamic loading, there is an ldso at 0x10000, not libloader.
> So, an idea: maybe, it is possible to compile ldso as a static lib, and link it statically to the
> binary? -- Then it will load at the binary link address, not 0x10000 and it will be free..

There's no way to change that address at runtime. Please just change it
in the code (loader/server/src/app.cc, APP_ADDR_LDSO) and try that.
Changing the way the linking is done is probably much more troublesome.
In L4Re this should work better as the lower region of the virtual
address space is not used for that purpose.


Adam
-- 
Adam                 adam at os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/




More information about the l4-hackers mailing list