+ Responder ao Tópico



  1. #1
    Under-linux.Org Team Avatar de MarcusMaciel
    Ingresso
    Dec 2000
    Localização
    Boston
    Posts
    1.961
    Posts de Blog
    44

    Padrão alguem sabe usar o GDB ????

    tipo to querendo debugar um programa
    porem nao faco ideia de como usar essa merda

    estou fazendo isso

    (gdb) quit
    root@gaucha:/etc/rc.d# gdb
    GNU gdb 5.0
    Copyright 2000 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain conditions.
    Type "show copying" to see the conditions.
    There is absolutely no warranty for GDB. Type "show warranty" for details.
    This GDB was configured as "i386-slackware-linux".
    (gdb) file /usr/sbin/milterquota



    (gdb) run -p unix:/var/run/milterquota.sock
    Starting program: /usr/sbin/milterquota -p unix:/var/run/milterquota.sock
    [New Thread 1024 (LWP 28989)]
    [New Thread 2049 (LWP 29768)]
    [New Thread 1026 (LWP 29989)]
    list
    [New Thread 2051 (LWP 4027)]

    Program exited normally.

    tipo o programa ta dando exit so que nao era pra dar...
    que que eu tenho que fazer pra ele nao dar exit ???
    na realidade se eu rodo no shell ele da segfault
    so que eu quero descobrir o porque do segfault pra arrumar essa merda..

    essa porra e um sistema de quota pro sendmail o cara teve uma boa ideia
    so que ta bixado e eu quero arrumar essa bosta....
    alguem tem IDEIA de como eu posso debugar ???


    lembrando se eu rodo pela shell eu tenho que rodar assim

    /usr/sbin/milterquota -p unix:/var/run/milterquota.sock

  2. #2

    Padrão alguem sabe usar o GDB ????

    tipo.. o programa tem q ser compilado com -g (considerango gcc) para ter o suporte a debuggin legal, ele nao deve ter os simbolos de debugging...


    tente usar o strace, quem sabe voce consegue algo.


    ah eh outor erro voce nao ta usando nenhum break point... manda um break main e sai dando step ate dar segfault..


    gdb "/usr/sbin/milterquota -p unix:/var/run/milterquota.sock"
    break main
    step
    ....