No symbol "xxx" in current context
2015-12-22 16:55
901 查看
gdb调试时报找不到符号(No symbol "pthread_cond_t" in current context.),可用如下方式让其显示出来。
首先:另外创建个源文件,对gdb中无法显示类型信息的类型定义变量,如foo.c文件。用
-g选项编译
然后:使用add-symbol-file将foo.o文件的符号添加至hello二进制文件中
首先:另外创建个源文件,对gdb中无法显示类型信息的类型定义变量,如foo.c文件。用
-g选项编译
bash$ cat foo.c #include <pthread.h> pthread_cond_t p; pthread_mutex_t m; bash$ gcc -g -c foo.c
然后:使用add-symbol-file将foo.o文件的符号添加至hello二进制文件中
(gdb) add-symbol-file foo.o add symbol table from file "foo.o" at .text_addr = 0x0 (y or n) y Reading symbols from /data/home/jakciehan/tmp/pthread_test/foo.o...done. (gdb) p *(pthread_mutex_t *)(0xbfa4bc74) $1 = { __data = { __lock = 2, __count = 0, __owner = 8205, __kind = 0, __nusers = 1, { __spins = 0, __list = { __next = 0x0 } } }, __size = "\002\000\000\000\000\000\000\000\r \000\000\000\000\000\000\001\000\000\000\000\000\000", __align = 2 }
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Linux 自检和 SystemTap
- 关于指针的一些事情
- Python 七步捉虫法
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- 路由器的配置与调试
- 对于技术人员的出现了运行时间错误,是否要进行调试的解决方法
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- C++联合体转换成C#结构的实现方法
- C++编写简单的打靶游戏
- C++ 自定义控件的移植问题
- C++变位词问题分析
- C/C++数据对齐详细解析
- C++基于栈实现铁轨问题
- C++中引用的使用总结
- 使用Lua来扩展C++程序的方法
- C++中调用Lua函数实例