GDB调试错误显示没有文件,退出代码127

本文记录了作者在云服务器上使用GDB调试32位程序时遇到的问题及解决过程。通过安装32位运行库libc6-i386解决了程序启动失败的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验环境:云服务器 OS:Ubuntu 14.4 运行步奏:gdb run

我在学习GDB调试的时候,一个测试用例,使用list等命令能够执行,但是在run的时候,得到了如下错误:

 No such file or directory During startup program exited with code 127.

刚开始我以为是用例没有权限,但是在我赋予权限之后并不能得到正确的结构,搜索出来的答案最多竟然是shell的路径设置不对,真是的。

然后将文件放在/user/lcoal/bin中继续GDB调试:Reading symbols from /usr/bin/test...(no debugging symbols found)。

有人说可能是文件没有相应的ELF解释器,我们知道在汇编过程中符号要合并到一个段中,没有合适的ELF解释器就无法对源代码的符号进行解析、重定位等。

but我检查了解释器,发现符号表是完整的,也排除了这个可能。


最好的结果是,云主机上的镜像没有32位运行时的支持,

 sudo apt-get install libc6-i386
got it!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值