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

Adam Lackorzynski adam at
Sun Oct 2 23:00:11 CEST 2011

On Thu Sep 29, 2011 at 07:01:50 +1300, Valery V. Sedletski wrote:
> I am trying to establish a shared arena for loading DLL's, i.e. a
> shared memory region, in which DLL's are loaded at the same address in
> each address space. I also need some ELF shared library loaded at
> fixed address, so I could call routines in .so from these DLL's (yes,
> a mixed case: LX format DLL's calling an ELF shared object, this
> shared object is a client library for some servers, and I want to call
> their API's from DLL's).  So, I intend to load a shared oblect at
> fixed address to be the same in different address spaces. But the
> l4env build system seems to produce PIC shared objects only, and no
> suitable example. Is there any way to compile a non-PIC shared object
> with l4env build system?

No, but adding an extra rule to a Makefile should be easy.

> I also hope the 'loader' server will load the shared library at
> pre-compiled address. Maybe, also the PIC ones could be loaded at
> desired address (I know that, at least, is loaded at
> fixed address, but maybe, this is a single hardcoded case)

Yes, this address is predefined. I'm not sure if it does load such libs,
just try it.

Adam                 adam at

More information about the l4-hackers mailing list