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.