2015-06-24 64 views
0

我正在使用GDB和“Open On-Chip Debugger”项目来为远程MIP目标调试交叉编译的项目,并且由于某些原因GDB无法找到源文件。GDB找不到源文件

这里我调用目标elf文件上的GDB。开发@ ubuntu:〜/ vitessesdk/CEServices/build $ mipsel-vtss-elf-gdb obj/CEServices.elf GNU gdb(crosstool-NG 1.20.0 - vtss-eCos-toolchain-v2)7.8 Copyright(C) 2014 Free Software Foundation,Inc. 这是免费软件:您可以自由更改和重新分配它。 在法律允许的范围内,不存在任何担保。请输入“显示复制” 和“显示保修”以了解详细信息。这个GDB被配置为“--host = x86_64-build_unknown-linux-gnu --target = mipsel-vtss-elf”。 输入“显示配置”以获取配置详细信息。 有关错误报告的说明,请参阅: 在线查找GDB手册和其他文档资源: 如需帮助,请键入“help”。 类型“中肯字”来搜索相关的命令,以“字” ...... ****从OBJ/CEServices.elf ......读完符号。**** (GDB)

在这点我输入目标远程命令连接 (gdb)目标远程本地主机:3333 远程调试使用localhost:3333 0xa0000000在?? () (gdb)步骤 找不到当前函数的界限 (gdb)列表 78 /home/development/vitesseSDK/CEServices/build/../third_party/eCos/packages/language/c/libc/startup/current /src/main.cxx:没有这样的文件或目录。 (gdb)

我将列出目录和文件在那里。 development @ ubuntu:〜/ vitessesdk/CEServices/build $ ls ../third_party/eCos/packages/language/c/libc/startup/current/src/main.cxx ../third_party/eCos/packages/language/ C/libc/startup/current/src/main.cxx 开发@ ubuntu:〜/ vitessesdk/CEServices/build $

有关为何发生这种情况的任何想法?

回答

2

阅读关于source path in GDB的部分。您需要在(gdb)命令中使用dir命令。提示。

+1

事实证明,在发出“目标远程本地主机:3333”之后调试远程目标时,我需要发出一个“加载”将图像加载到目标,因为我没有运行gdbserver在目标上。加载后,它工作正常。 –

1

事实证明,当发出“目标远程本地主机:3333”后调试远程目标时,我需要发出一个“负载”将图像加载到目标,因为我没有在目标上运行gdbserver。加载后,它工作正常。 - Bruce Lavoie刚才