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, libloader.s.so 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