|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
[C] debugger, come?
Devo debuggare un progaramma scritto in c composto da diversi file.c header.h
Ho due domande: 1) come è possibile debuggare tramite shell in linux? 2) in seguito a un problema mi è stato consigliato anche di fare un esecuzione passo-passo... che significa? come è possibile farla?
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 Ultima modifica di noodles83 : 01-04-2007 alle 19:04. |
![]() |
![]() |
![]() |
#2 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
![]() il debugger solitamente incluso in qualsiasi distro di Linux è gdb (il debugger della collezione GNU), ma usarlo così da linea di comando è come martellarsi i coglioni con una mazzetta da 3,5 kg scaldata sul fuoco. usa un IDE ![]() se usi KDE dovrebbe esserci KDevelop |
|
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
![]()
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
Quote:
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 Ultima modifica di noodles83 : 01-04-2007 alle 20:18. |
|
![]() |
![]() |
![]() |
#5 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
![]() e non scherzo nemmeno io: a conti fatti la curva d'apprendimento per l'uso di un debugger grafico ben fatto è pressoché orizzontale, passi il mouse su un bottone, attendi che appaia il tooltip e intuisci immediatamente due cose: 1) a cosa serve il bottone 2) che il debugger ha quella funzionalità che prima neanche conoscevi e a quel punto ti rendi conto che se prima trovavi produttivo lavorare da linea di comando era solo perché non avevi ancora sperimentato la GUI, e non torneresti più indietro. solito discorso che vale in generale per qualsiasi strumento CUI che abbia una controparte GUI ![]() |
|
![]() |
![]() |
![]() |
#6 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
|
![]() |
![]() |
![]() |
#7 |
Junior Member
Iscritto dal: Mar 2007
Città: Pufflandia
Messaggi: 7
|
Prova Scite...
__________________
Ci sono 10 tipi di persone: chi conosce il codice binario e chi no!!! ![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Insight lo trovi nei repository ubuntu.
E' un ottimo frontend per gdb, ovviamente devi compilare passando il parametro: -ggdb |
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
Quote:
per quanto mi riguarda uso solo valgrind (UTILISSIMO) e gdb. poi fprintf a manetta per loggare tutto il loggabile. secondo me è meglio abituarsi a debuggare senza tanti "fronzoli". ci sono situazioni nelle quali non puoi nemmeno eseguire il codice passo passo, ad esempio quando la tua applicazione comunica (via modem, rete ecc.) con altre. sarà anche più scomodo ma è un metodo che funziona sempre. 71104 dici giustamente che quando provi la GUI poi è dura tornare indietro. motivo in più per non diventare schiavi della GUI, perché quando non puoi proprio usarla poi sono seccature |
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
grazie per le risposte ragazzi!
vorrei chiedere un altra cosa... per debuggare che opzioni devo dare al compilatore?
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
-ggdb
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
PROBLEMA!!
se compilo normalmente con gcc -o file file.c ....etc... tutto va bene e compila correttamente. se invece compilo con gcc -o -ggdb file file.c ...etc... mi spunta fuori questo: ![]() paolo@paolo-linux:~/programmazione/LCS/lcschat$ gcc -o -ggdb client client.c lcscom.c -L./lib -lpthread -lncurses -lMainWindow client ![]() /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o:../sysdeps/i386/elf/start.S:65: first defined here client: In function `__data_start': multiple definition of `__dso_handle' /usr/lib/gcc/i486-linux-gnu/4.0.3/crtbegin.o ![]() client: In function `_init':/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crti.S:32: multiple definition of `_init' /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crti.o:/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crti.S:11: first defined here client: In function `_start':../sysdeps/i386/elf/start.S:65: multiple definition of `_start' /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o:../sysdeps/i386/elf/start.S:65: first defined here client: In function `_fini':/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crti.S:47: multiple definition of `_fini' /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crti.o:/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crti.S:11: first defined here client: In function `__i686.get_pc_thunk.bx':/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crtn.S:34: multiple definition of `__i686.get_pc_thunk.bx' /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crti.o:/build/buildd/glibc-2.3.6/build-tree/i386-libc/csu/crti.S:11: first defined here client ![]() /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o:../sysdeps/i386/elf/start.S:71: first defined here client: In function `__data_start': multiple definition of `__data_start' /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o:../sysdeps/i386/elf/start.S:65: first defined here /tmp/ccOHaJrV.o: In function `ResizeHandler':client.c ![]() client: first defined here /tmp/ccOHaJrV.o: In function `SigIntHandler':client.c ![]() client: first defined here /tmp/ccOHaJrV.o: In function `gestInput':client.c ![]() client: first defined here /tmp/ccOHaJrV.o: In function `main':client.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `createServerChannel':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `destroyServer':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `acceptConnection':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `receiveMessage':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `sendMessage':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `closeConnection':lcscom.c ![]() client: first defined here /tmp/cc7Ngxv1.o: In function `openConnection':lcscom.c ![]() client: first defined here collect2: ld returned 1 exit status paolo@paolo-linux:~/programmazione/LCS/lcschat$
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 Ultima modifica di noodles83 : 05-04-2007 alle 10:33. |
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
gcc -ggdb -o file file.c
-o deve essere seguito dal nome del file eseguibile |
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
gcc -ggdb -o file ........
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Oct 2005
Città: Pisa
Messaggi: 1047
|
ehehe... avete troppo ragione! scusate, ma sto imparando ora...
![]()
__________________
Vendite concluse ottimamente con: Bastian UMTS, Tiscaliniano. --------------------------------------------------------- 1) Macbook Pro Core 2 Duo 2,16Ghz - 2GB di RAM - HD 160GB - Glossy Widescreen - 2°Gen 2) iPhone 3G - 8GB Black 3) Ipod Shuffle Blu 1GB 4) iMac 27" QuadCore i7 |
![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
per gnome (ma non solo) si sposa bene visto che è in gtk l'ide anjuta.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek ![]() |
![]() |
![]() |
![]() |
#17 |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:30.