有没有办法在armhf系统上加载为arm(el)编译的共享对象(Ubuntu 12.10 for armhf)? 对于可执行文件,我通过创建以下符号链接来解决问题
/lib/ld-linux.so.3 - > /lib/ld-linuxarmhf.so.3
看看strace输出(尝试加载data_nohf / test.so的最后几行)似乎即使没有二进制映射也是由dlopen完成的。
open("data_nohf/test.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0(\356\2\0204\0\0\0"..., 512) = 512
lseek(3, 1456412, SEEK_SET) = 1456412
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
lseek(3, 1456140, SEEK_SET) = 1456140
read(3, "A(\0\0\0aeabi\0\1\36\0\0\0\0056\0\6\6\10\1\t\1\22\4\24\1\25\1\27"..., 41) = 41
exit_group(1) = ?