arm开发板可执行c程序出现找不到此文件的错误

在2012年4月13号的时候由Linaro组织开了一个会议,以统一各ARM板linux系统发行版的加载程序/lib/ld-linux.so.3的路径及名称,在这前:

Debian/Ubuntu 用的是:/lib/arm-linux-gnueabihf/ld-linux.so.3

Fedora, OpenSUSE用的是:/lib/ld-linux.so.3 

这就会造成编译好的程序在不同的linux版本上运行不兼容,因此才会出现:No such file or directory的出错。

这会议之后的统一的加载程序是:/lib/ld-linux-armhf.so.3

使用gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux.tar.bz2编译一个最简单的可执行程序。

放到ok335xd开发板上运行出现-sh: ./share_test: No such file or directory错误。

不同于windows上,linux上这样的错误是可执行程序要连接的库无法找到,而根据上面的介绍我们这里需要定位到ld-linux-armhf.so.3。

1)尝试将gcc-linaro-arm-linux-gnueabihf-4.8中的ld-2.18-2013.10.so链接,改名为ld-linux-armhf.so.3,则出现libc.so.6找不到的情况,继续修改添加合适的libc.so.6后则出现系统其他命令无法使用。

2)尝试gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux照上面的操作改为ld-linux-armhf.so.3,可执行程序可以执行,没有错误了,但是没有结果。

3)直接尝试将开发板上原有的ld-2.12.2.so文件改名或者链接为ld-linux-armhf.so.3,则可以正常使用。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值