Ankh with l4Linux

Björn Döbel doebel at os.inf.tu-dresden.de
Thu Mar 15 23:01:53 CET 2012


Hey,

> Here is the output of nm for above two methods.
> 
> 00000000 t pci_dev_put
> 00000000 t pci_get_device
> 
> It seems like their visibility is "local". I looked at the declaration
> and the definition of the methods and they are not defined as "static" 

that's what I was thinking.

Short explanation: Go to l4/pkg/dde/linux26/lib/src and add these
symbols to global-symbols.all. Recompile DDE and the Ankh link errors
should disappear.

Long explanation: We are using Linux device drivers within L4
applications and these apps may be linked against things like a libC
etc., which may lead to name clashes between functions provided by the
libC and functions coming from the Linux kernel. Therefore, we compile
DDE in a way that all functions are marked local by default and thus
will not be used when linking an application. Only those functions
explicitly marked as used (by adding them to global-symbols.all or the
architecture-dependent equivalents) will be made available for linking.

Hth,
Bjoern




More information about the l4-hackers mailing list