设为首页 加入收藏

TOP

64位系统由于找不到32位程序加载器而无法运行32位程序的分析过程(二)
2015-07-20 18:00:41 来源: 作者: 【 】 浏览:5
Tags:64位 系统 由于 不到 32位 程序 加载 无法 运行 分析 过程
5327c5e3d0ca6dda16c610a210f3, stripped

可以看到,arm-unknown-linux-gnueabi-ld是32位的程序,/bin/ls是64位的程序。

但64位系统不是兼容运行32位程序吗?难道64位程序的加载器不一样。看一下两者的ldd结果。

[xuzhina@localhost singlecell]$ ldd /bin/ls
	linux-vdso.so.1 =>  (0x00007fffbf1fe000)
	libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fe71af3b000)
	libcap.so.2 => /lib64/libcap.so.2 (0x00007fe71ad36000)
	libacl.so.1 => /lib64/libacl.so.1 (0x00007fe71ab2c000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fe71a76b000)
	libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fe71a50a000)
	liblzma.so.5 => /lib64/liblzma.so.5 (0x00007fe71a2e4000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fe71a0e0000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fe71b178000)
	libattr.so.1 => /lib64/libattr.so.1 (0x00007fe719edb000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe719cbe000)
[xuzhina@localhost singlecell]$ ldd /home/xuzhina/Downloads/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld
	不是动态可执行文件
[xuzhina@localhost singlecell]$ ls /lib/ld-linux.so.2
ls: 无法访问/lib/ld-linux.so.2: 没有那个文件或目录

也就是说,要64位系统能够运行32位程序,还得安装32位的加载器。

那么,ld-linux.so.2是在哪个软件包呢,由于我的系统是centos 7,所以,我从rpmfind.net知道ld-linux.so.2属于glibc.i686。

安装了glibc.i686之后,再重新make,得到下面的结果:

[xuzhina@localhost singlecell]$ make
make -C hello KERNEL=micro BUILD=debug
make[1]: 进入目录“/home/xuzhina/Downloads/singlecell/hello”
cp hello.xml.in build.micro-debug/bin/hello.xml
arm-unknown-linux-gnueabi-ld -o build.micro-debug/bin/hello -Ttext=0x80000000 -L/home/xuzhina/Downloads/sdk/okl4/xscale/micro-debug/libs /home/xuzhina/Downloads/sdk/okl4/xscale/micro-debug/libs/crt0.o  build.micro-debug/src/hello.o --start-group /home/xuzhina/Downloads/sdk/okl4/xscale/micro-debug/libs/libc.a /home/xuzhina/Downloads/sdk/okl4/xscale/micro-debug/libs/libokl4.a /home/xuzhina/Downloads/arm-unknown-linux-gnueabi/bin/../lib/gcc/arm-unknown-linux-gnueabi/4.2.4/libgcc.a --end-group
make[1]: 离开目录“/home/xuzhina/Downloads/singlecell/hello”

问题解决。



首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU 3038 How Many Answers Are W.. 下一篇POJ 3114 Countries in War 强连..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: