gdb调试info threads只能显示一个进程问题
来源:互联网 发布:网络十大禁书百度云 编辑:程序博客网 时间:2024/05/31 19:51
在一个Linux环境中,调试多线程程序不正常,info threads看不到多线程的信息。
我先用命令maintenance print target-stack看了一下target的装载情况,发现target"multi-thread"没有被装载,用GDB对GDB进行调试,发现在 函数check_for_thread_db在调用libthread_db中的函数td_ta_new的时候,返回了TD_NOLIBTHREAD,所 以没有装载target"multi-thread"。
在时候我就怀疑是不是libpthread有问题,于是检查了一下发现了问题,这个环境中的libpthread是被strip过的,我想可能 就是以为这个影响了td_ta_new对libpthread符号信息的获取。当我换了一个没有strip过的libpthread的时候,问题果然解决 了。
最终我的解决办法是拷贝了一个.debug版本的libpthread到lib目录中,问题解决了。
我先用命令maintenance print target-stack看了一下target的装载情况,发现target"multi-thread"没有被装载,用GDB对GDB进行调试,发现在 函数check_for_thread_db在调用libthread_db中的函数td_ta_new的时候,返回了TD_NOLIBTHREAD,所 以没有装载target"multi-thread"。
在时候我就怀疑是不是libpthread有问题,于是检查了一下发现了问题,这个环境中的libpthread是被strip过的,我想可能 就是以为这个影响了td_ta_new对libpthread符号信息的获取。当我换了一个没有strip过的libpthread的时候,问题果然解决 了。
最终我的解决办法是拷贝了一个.debug版本的libpthread到lib目录中,问题解决了。
0 0
- gdb调试info threads只能显示一个进程问题
- gdb调试Go,info goroutines
- linux gdb 调试多线程 多进程 显示宏
- gdb调试子进程
- gdb 多进程调试
- gdb多进程调试
- GDB 调试子进程
- gdb调试多进程
- GDB 调试多进程
- gdb调试子进程
- gdb调试子进程
- gdb调试子进程
- GDB调试子进程
- linux gdb 进程调试
- GDB多进程调试
- gdb调试Python进程
- gdb 调试子进程
- GDB多进程调试
- 针对实体编程
- Hdu 1541 Stars
- java虚拟机的Stack和Heap
- angular js $http
- Python-RESTful API开发(二)
- gdb调试info threads只能显示一个进程问题
- 【Python django学习笔记】- django安装和启动
- Common administrative commands in Red Hat Enterprise Linux 5, 6, and 7
- jsonp 使用记录(二)跨域设置cookie
- MongoDB创建和删除自启动服务
- linux下如何自动生成Makefile文件
- java特种兵读书笔记(4-1)——java通信之概述
- googel软件测试之道——总结
- 一张图搞定Android学习路线,非常全面