Chinaunix首页 | 论坛 | 博客
  • 博客访问: 718370
  • 博文数量: 161
  • 博客积分: 2998
  • 博客等级: 少校
  • 技术积分: 1697
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-28 09:39
文章分类

全部博文(161)

文章存档

2012年(6)

2011年(120)

2010年(35)

分类: LINUX

2011-08-16 22:37:51

ldd main : 查看依赖库文件
ln -s /usr/lib/perl5/5.8.3/i386-linux-thread-multi/CORE/libperl.so /lib/libperl.so
可以在动态库中要暂停的地方加入如下的代码
int debug = 1
while(debug == 1) sleep(1);

然后启动程序
查出它的进程号,再用gdb -pid 进程号,或者attach命令连接到进程,再set variable debug=0
就可以让进程继续执行了.
     如果暂用   export   LD_LIBRARY_PATH=/path/ 
      用完后     unset     LD_LIBRARY_PATH=/path/
info   shared 
应该是在run之后,shared   libggg.so 
设置LD_LIBRARY_PATH环境变量 
>   setenv   LD_LIBRARY_PATH   ${PWD} 
>   env   |   grep   LD 
LD_LIBRARY_PATH=/home/hchen/test/so 

使用命令 ulimit -c 查询,若显示为0,则在程序路径不会生存core文件。

使用命令设置ulimit -c 1024

ulimit -c 1024只会影响当前的终端,终端关闭后又会恢复为0。

执行有错误的程序,显示类似如下信息 段错误 (core dumped),

这时候就在当前路径下产生了core文件

 

调试

gdb 程序 core或者gdb --core==core 以后再添加程序

使用gdb 程序 core后就会看到错误信息的位置了



阅读(2414) | 评论(0) | 转发(0) |
0

上一篇:Source Insight

下一篇:access转sqlite

给主人留下些什么吧!~~