LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1054|回复: 7

LFS第五章节,gcc dummy.c readelf -l a.out | grep '/tools'有点问题!!

[复制链接]
发表于 2004-3-5 09:13:21 | 显示全部楼层 |阅读模式
用readelf -l a.out | grep '/tools'
没有输出信息
而用readelf -l a.out | grep '/'
输出了我们要的Requesting program interpreter: /tools/lib/ld-linux.so.2]
这样合理吗?我要怎样去理解这条命令??
发表于 2004-3-5 12:48:38 | 显示全部楼层
这是个管道命令,就是将"|"前的输出作为后面的输入
readelf -l a.out | grep '/tools'
就是把readelf命令的输出后,用grep查找包含'/tools'的行
发表于 2004-4-19 13:28:11 | 显示全部楼层
不知道楼主的做法合理吗?请大哥们指教。小弟也遇到与楼主同样的问题。
发表于 2004-4-20 14:34:03 | 显示全部楼层
没有输出,说明你的工具链没调整好,可以用编辑器打开那两个文件,查找一下,看有没有改过来。
发表于 2004-4-29 16:42:58 | 显示全部楼层
这句话只是一个手段,只要文件里面有 "Requesting program interpreter: /tools/lib/ld-linux.so.2" 这部分内容就对了

不过,我觉得 grep '/tools' 应该能看到同样的结果啊
是不是引号里面多加了空格而没注意?
发表于 2004-4-29 17:38:09 | 显示全部楼层
楼主,把你的命令输出详细贴出来给本教主看看~~~~~
发表于 2004-6-2 14:45:48 | 显示全部楼层

老调重谈之千奇百怪现象

偶一直在root下编译以上软件包,到了这里没有打出信息,用命令行查出当前gcc链接库是  /lib/ld-linux.so.2

转到lfs用户下执行编译,提示非法无效不能打开a.out
删除测试dummy.c 和a.out,重建dummy.c, lfs下编译后查看链接正确
/tools/lib/ld-linux.so.2

再转回到root下重建重编译,最后打出信息:/tools/lib/ld-linux.so.2

很奇怪呀
发表于 2004-6-2 23:17:34 | 显示全部楼层
要多咀嚼lfs手册,这样学习才有效率。

1.不奇怪啊,创建lfs帐户的出发点是创建一个干净的环境,其中关键在于PATH变量,这限定了库的链接路径(root是宿主系统路径,而lfs用户是/tools根路径)
2.root创建的a.out与dummy.c对普通用户只读,lfs用户自然不能写a.out
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表