I need to do a rather unusual thing: manually execute an elf executable. I.e. load all sections into right places, query main() and call it (and cleanup then). Executable will be statically linked, so there will be no need to link libraries. I also control base address, so no worries about possible conflicts.
So, is there are any libraries for that?
I found OSKit and its liboskit_exec, but project seems to be dead since 2002.
I'm OK with taking parts of projects (respecting licenses, of course) and tailoring them to my need, but as I'm quite a noob in the linux world, I dont even know where to find those parts! :)
PS. I need that for ARM platform.
UPD Well, the matter of loading elfs seems to require some good knowledge about it (sigh), so I'm out to read some specs and manuals. And I think I will stick to bionic/linker and libelfsh. Thanks guys!
Summarized findings:
- libelf: http://directory.fsf.org/project/libelf/
- elfsh and libelfsh (are now part of eresi): http://www.eresi-project.org/
- elfio (another elf library): http://sourceforge.net/projects/elfio/
- OSKit and liboskit_exec (outdated): http://www.cs.utah.edu/flux/oskit/
- bionic/linker: http://android.git.kernel.org/?p=platform/bionic.git