Hi all,

Sorry for the double post (this is also in the general c board). I was told this was a better board to ask around in . I have been reading up on ELF and googling for the last few weeks, and have also posted to the 'official' libelf email address (no reply yet, but its early days).

I am cross compiling for an ARM device and don't have access to the dlopen/dlsym etc functions to manipulate shared ELF libraries - what I do have is access to libelf.

I am wondering if anyone has experience with libelf, or manually resolving symbols in shared libraries?

I have a simple shared library (for testing) with two simple functions in it, and no external dependencies. The 'add' function just adds one to the number that you pass it and returns it, and the 'subtract' function returns the input minus one.

After I have loaded the .text and .data section to memory, how can I find out the addresses of the two functions (similar to the dlsym( lib, 'subtract'); type call that would be used if dlopen was available).

Any help greatly appreciated.