gdb 调试 报 stepping until--- has no line number information

gdb 经常用 ,但今天使用gdb 调试的时候, break 打断点, 结果也没有打出 哪一行的信息,就只是提示一个具体地址。
使用单步调试 结果爆出 stepping until exit from function dpdk_device_input, which has no line number information-----信息。

但是make的时候已经加入 -g O0 -ggdb了怎么还是出现这个问题呢? 想不通啊!!!

使用make VERBOSE=1 打印出详细的编译信息, 发现gcc 后面带了一些 参数 不是很熟悉, 难道是这些参数的原因导致的??

google 了一下 这些参数不会影响debug 信息。为了以防万一, 还是在gcc 参数中去掉仅保留 -fpic -g -O0 -ggdb
重新clean 然后编译。替换gdb 调试
结果:还是没有解决问题
那到底是什么原因呢 ???

查阅“Debugging with gdb The gnu Source-Level Debugger Ninth Edition, for gdb version 7.0.50.20100218-cvs” gnu make gcc 等书籍 貌似 gcc make gdb参数 是对的

陷入了 困惑 都是对的 那为什么就出问题了呢??

仔细想了一下: make gcc gdb 单独来看都是对的。而且 参数 也是出入正确。 ----

----也就是单独使用正确 但是联合起来 结果不正确-----这种现象是不是很常见---团队合作联调的时候,大家都说自己是正确的,最后发现有个东西没有衔接好

所以 是不是由于make gcc gdb 不兼容导致的??

为了验证问题, 赶紧在编译环境下 编译一个helloWord程序, 然后在编译环境下 使用gdb 调试 打断点测试
果然出现了!! 有debug 信息。说明就是gdb gcc 版本问题导致。

所以后面重新 编译gdb 咯!!

posted @   codestacklinuxer  阅读(966)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示