Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我遇到了一个coredump,使用gdb xxx core.1234,然后是“bt”,得到那些消息:“0x6f636d6f in ??()”,其中函数名不可读。我想学习:1.在什么情况下gdb bt 节目“??” 作为函数名?2.如何避免这些“??” 并获得可读的函数名称?
地址 0x6f636d6f 几乎可以肯定是无效的(即,位于进程的内存空间之外),并且可能是堆栈损坏的结果——它对应于 ASCII 字符ocmo。
ocmo
1 案例:堆栈已损坏。 2 案例:代码通过优化编译(不确定)。 3 案例:你启动 gdb 错误(例如 gdb ./app --core core_name)。