Is there a way to build a non-PIC shared library with l4env?
Valery V. Sedletski
_valerius at mail.ru
Sat Oct 8 14:36:35 CEST 2011
On Sat, 08 Oct 2011 23:02:40 +1300 (MSD), Valery V. Sedletski wrote:
>On Fri, 7 Oct 2011 00:36:34 +0200, Adam Lackorzynski wrote:
>>Ok, try it.
>So, I tried to link the libdl as a static library to my program, and load my shared lib with dlopen(). It almost worked, but I
>got many unresolved symbols when loading the library. So, I tried to add the missing static libs when linking my shared
>lib. As I understood, when linking shared libs, I should link it with libs with '.p' suffix. But not all libs have their counterparts
>with '.p' suffix. I added these libs:
>What is the difference of libs with '.p' suffix from the libs without it? Should I make myself such versions for my libs (I use only client ones for my
>servers). And could anyone tell, what libs from the above list could reference symbols like 'main', 'crt0_tramppage'?
Yes, I found it: the symbols 'crt0_tramppage' and 'main' were referenced from libl4env.p.a. Strange, because it has '.p' suffix... But when I remove this
library from linker command line, the next symbol is missing: 'l4env_request_config_u32'. Who may need it and what libs could be safely removed?
More information about the l4-hackers