5 Stimmen

Wie kann ich den Linker, der im .interp-Header einer ausführbaren Datei unter Linux angegeben ist, außer Kraft setzen?

Ich habe einen Cross-Compiler, der in seinem .interp-Header einen benutzerdefinierten Lader angibt:

objdump -s beaglebone/x86_64-angstromsdk-linux/usr/bin/armv7a-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-g++ | head

beaglebone/x86_64-angstromsdk-linux/usr/bin/armv7a-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-g++:     file format elf64-x86-64

Contents of section .interp:
 400200 2f757372 2f6c6f63 616c2f6f 65636f72  /usr/local/oecor
 400210 652d7838 365f3634 2f737973 726f6f74  e-x86_64/sysroot
 400220 732f7838 365f3634 2d616e67 7374726f  s/x86_64-angstro
 400230 6d73646b 2d6c696e 75782f6c 69622f6c  msdk-linux/lib/l
 400240 642d6c69 6e75782d 7838362d 36342e73  d-linux-x86-64.s
 400250 6f2e3200                             o.2.            

Ich möchte diese Binärdatei verwenden können, ohne sie im System zu installieren. Ist es möglich, den im .interp-Header angegebenen Loader außer Kraft zu setzen und Linux anzuweisen, den Systemloader zu verwenden ( /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 )? Laufen arm-angstrom-linux-gnueabi-g++ con /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 funktioniert bis zu einem gewissen Grad manuell, auch wenn es nicht gelingt, Förderprogramme auszuführen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X