Hi, We're experiencing problems with ELF symbol interposition with xenomai forge. The symbol mem_alloc, declared in include/copperplate/heapobj.h and defined in lib/copperplate/heapobj-malloc.c, is also present in our own executable. When linking our objects with the xenomai-forge libraries, the symbols from our objects take precedence.
As a result, when heapobj_alloc() calls mem_alloc(), it calls the mem_alloc from our application code, which of course is totally incompatible. There isn't really a good solution to this problem. I think it will be necessary to make sure that all exported functions from the xenomai-forge libraries have a unique name. The name 'mem_alloc' (and many of the functions in lib/copperplate/heapobj-malloc.c) is too common. Another solution may be to mark certain symbols as hidden, provided they do not need to be exported to applications. Some references to it appear here: http://www.airs.com/blog/archives/307 What is your view on this? Thanks, Thomas _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
