繁体   English   中英

GDB exec错误:没有这样的文件或目录

[英]GDB exec Error: No such file or directory

我有一个可执行文件,我可以从中读取符号(所以看起来。)我的问题是:当运行时,我收到以下错误:

(gdb) run Starting program: /home/usr/src/etcetera/etcetera/bin/theExecutable.exe Cannot exec -c exec /home/usr/src/etcetera/etcetera/bin/theExecutable.exe. Error: No such file or directory During startup program exited with code 127

显然,我在这里编辑了目录。 我搜索了如何解决这个问题,并尝试了以下一些解决方案:

gdb无法看到源文件

GDB找不到源文件

gdb无法加载源文件?

进入这个链接:

https://sourceware.org/gdb/download/onlinedocs/gdb/Source-Path.html#Source-Path

我正在尝试更改源文件目录。 (源文件与可执行文件不在同一个位置,而是分布在不同的地方。)除非我弄错了,这样做的方法是:

(gdb) directory /home/usr/src/etcetera/etcetera/rootDirectoryForSourcefiles

并让GDB搜索此目录。 我甚至尝试将目录更改为源目录,然后运行但仍然,它想尝试可执行文件所在的位置。

我是否完全错过了这里的标记,或者这可能是非常模糊的?

请注意,如果您希望对此问题进行投票,我将非常感谢您解释原因,以便我可以为将来做出改进

谢谢

你正在咆哮错误的树。 您的问题与源文件无关,与您的可执行文件有关。

它可能与~/.gdbinit ,或~/.bashrc某些内容有关,也可能与您调用GDB的方式有关。

您应该首先进行基本的健全性检查:

env SHELL=/bin/sh gdb -nx /bin/date
(gdb) run

如果这不起作用,你的GDB安装就搞砸了。

如果这确实有效,我上面提到的三件事之一很可能是你的麻烦的原因。

我遇到了这个问题,结果发现在/etc/passwd文件中没有正确设置shell。

为了解决这个问题,我打开了文件

sudo vipw

并将/bin/bash添加到我帐户的数据中。

尝试:

export SHELL = / bin / sh

在运行gdb之前

我遇到了同样的问题。 当我的

SHELL=/usr/local/bin/tcsh

但我只有文件.cshrc ,gdb报告相同的错误。

当我改变SHELL时:

setenv SHELL /bin/csh

一切都很顺利。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM