arm-none-linux-gnueabi-readelf看库依赖
来源:互联网 发布:安卓软件监控 编辑:程序博客网 时间:2024/06/06 01:31
1、问题描述:
运行一个程序,会出现-/bin/sh: xxx :not fount
打开/sbin下会发现这个xxx可执行文件是存在的,这可能是文件系统中(/lib)中缺少某些库导致的。
2、解决方法-以hello.c示例
以hello.c为例,编译出了hello可执行文件,放到了/sbin中,并且在/etc/init.c/rcS中添加:
/sbin/hello &
运行时出现了:
-/bin/sh: hello: notfound
解决方法:
一、在PC上,查看hello所依赖的库:
#arm-linux-readelf –ahello 【用arm-linux-readelf -a 文件名 也可以的】
找到:
Program Headers:
说明hello依赖与ld-linux.so.2
二、拷贝库到文件系统Lib目录,创建链接文件
在编译器的lib目录中找到ld-linux.so.2:
root@xiangpingli: # pwd
/opt/EmbedSky/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/arm-linux/arm-linux/lib
root@xiangpingli: # ls
ld-linux.so.2
root@xiangpingli: # ls -l
lrwxrwxrwx 1 500 500 11 2009-04-08 17:41ld-linux.so.2 -> ld-2.3.6.so
可以看出这是个连接文件,是指向ld-2.3.6.so的连接
我的做法:
将ld-linux.so.2和ld-2.3.6.so都拷贝到了我的文件系统目录的/lib下,然后再做连接:
ln-s ld-2.3.6.so ld-linux.so.2
来建立ld-linux.so.2的符号连接。
提示ld-linux-so.2文件已经存在
所以,应先删除ld-linux.so.2,或者说仅拷贝ld-2.3.6.so,然后建立连接:
ln-s ld-2.3.6.so ld-linux.so.2
建立ld-linux-so.2就可以了。
三、拷贝依赖的其他动态库
运行时还会出现如下错误:
/sbin/hello:error while loading shared libraries: libc.so.6: cannot open shared objectfile: No such file or directory
解决方法:从同一目录下拷贝过去就可以了。
这是再运行hello,就会成功了:
================================
hello world
================================
- arm-none-linux-gnueabi-readelf看库依赖
- arm-none-linux-gnueabi
- arm-none-eabi && arm-none-linux-gnueabi
- Target: arm-none-linux-gnueabi
- arm-none-linux-gnueabi交叉编译器
- arm-none-linux-gnueabi-gcc 版本下载
- 最新arm-none-linux-gnueabi下载
- arm-none-linux-gnueabi-gcc下载
- arm-none-linux-gnueabi-gcc下载
- arm-none-linux-gnueabi-gcc下载
- arm-none-linux-gnueabi-gcc下载
- 安装arm-none-linux-gnueabi交叉编译器
- arm-none-linux-gnueabi-gcc下载
- arm-none-linux-gnueabi-gcc install
- arm-none-linux-gnueabi-gcc 下载地址
- .arm-none-linux-gnueabi-gcc: not found
- arm-none-linux-gnueabi-gcc下载
- arm-none-linux-gnueabi-gcc下载
- poj 2785 4 Values whose Sum is 0(双向搜索)
- rman恢复之丢失非当前联机重做日志文件(读书笔记)
- WINDOWS下VIM配置
- 算法导论中九大排序算法总结
- strcat
- arm-none-linux-gnueabi-readelf看库依赖
- cocos2d-x开发笔记:获取Sprite上某一个点的透明度,制作不规则按钮
- 关于测试
- vs64位下不能内嵌汇编
- linux 系统查看物理内存使用率的命令,以百分比形式输出
- 菜鸟初长成1.1.2
- 移动网络游戏实现流程 -- 基于Cocos2d-x引擎和pomelo服务器框架
- 黑马程序员----c语言入门疑难点--几个经典的算法
- sql sever 2008安装失败