Newsgroup: it.comp.lang.c
Titolo: debuggare un codice

Salve a tutti!!!
Sto cercando invano di debuggare un codice sotto linux...per
l'esattezza il programma ad elementi finiti FEAPpv (la versione
scaricabile da internet).
Ossia...facendo 'g77 -g' o con 'gdb' non funziona niente .....il che è
anche ipotizzabile visto che io per far girare il codce non compilo con
g77 ma propio con il comando  '.\feappv'....il programma mi chiede il
file di input e tutto funziona...o quasi.
Sapete aiutarmi???
grazie mille!!
C

 Ossia...facendo 'g77 -g'
g77 -> fortran.
fortran != C

Oltre a questo è necessario che il programma in questione sia stato
compilato con i simboli di debug all'interno (flag -g su makefile per
gcc ad esempio) e che non siano stati rimossi i punti di attacco delle
librerie debug (con strip), altrimenti l'uso del debugger è inutile.
Ben

ma...
domanda 1: come faccio a vedere se sono stati rimossi i punti di
attacco delle librerie debug?
domanda2 : come faccio a usare l'opzione gcc - g .....io non compilo
con gc perchè lancio direttamente il programma feap! non è che in
questi casi ci sono altri comandi?
ancora grazie
C.

 questi casi ci sono altri comandi?
Se chi ha fatto l'eseguibile non ha usato il flag -g allora non puoi usare
il debugger, e se vuoi includere i simboli per il debug devi ricompilare
partendo dai sorgenti.
Ciao
  Andrea

 questi casi ci sono altri comandi?
se hai i sorgenti ok, altrimenti mi sa che ti attacchi.. :-/ :-\

qui si fa complicata...io non ne so molto.comunque cerco di spiegarti.
ciò che ho fatto è stato scaricare questo programma FEAPpv dalla
rete...l'ho installato e molto semplicemente per farlo funzionare
faccio '.\feappv'...mi chiede il file di input (che ho precedentemente
costruito )  e tutto funziona.
Nella cartella principale oltre al file feappv.f  c'è un
makefile...questo oltre ad includere un altro 
makefile.in
 che è
contenuto altrove dice:
OBJECTS = feappv.o
SOURCES =$ (FSOURCE) feappv.$(FEXT)
feappv : $(OBJECTS) $ (SOURCES)  $ (ARFEAP)
            $(FF)$ -o feappv $ (OBJECTS) $ (AREAP) $ (LDOPTIONS)
f.o:
            $(FF) -c $ (FFOPTFLAG) -I $ (FINCLUDE) *.f
.c.o:
            $ (CC) -c $ (CCOPTFLAG)  *.c
è sufficiente per farti capire o devo cercare altro??
grazie ancora
C.

girando un po' in rete sono arrivata  a questo....
invece di mettere  nel malìkefile la riga di comando
             $(FF)$ -o feappv $ (OBJECTS) $ (AREAP) $ (LDOPTIONS)
l'ho sostiutita con
             $(FF)$ -g feappv $ (OBJECTS) $ (AREAP) $ (LDOPTIONS)
così posso ottenere uneseguibile debuggabile...
xò se faccio g77 -g mi da problemi nel senso che mi dice che non
riesce ad aprire gli include file del file.f con conseguenti altri
errori
come posso fare?
grazie
C.

 invece di mettere  nel malěkefile la riga di comando
Ci sei quasi:
f.o:
            $(FF) -g -c $ (FFOPTFLAG) -I $ (FINCLUDE) *.f
.c.o:
            $ (CC) -g -c $ (CCOPTFLAG)  *.c
Ciao
  Andrea

grazie mille!!!!!
allora.....il mio make file ora è :
OBJECTS = feappv.o
SOURCES =$ (FSOURCE) feappv.$(FEXT)
feappv : $(OBJECTS) $ (SOURCES)  $ (ARFEAP)
            $(FF)$ - g feappv $ (OBJECTS) $ (AREAP) $ (LDOPTIONS)
.f.o:
            $(FF)  -g -c $ (FFOPTFLAG) -I $ (FINCLUDE) *.f
.c.o:
            $ (CC) -g -c $ (CCOPTFLAG)  *.c
però quando lo compilo con g77 -g mi da sempre problemi che non riesce
a legger i file include....cosa ho sbagliato???
ho provato a cercare altro ma non ho trovato niente.
forse sbaglio il comando di compilazione che mi dovrebbe  produrre il
nuovo eseguibile??
io faccio :  g77 -g nomefile.f nomeeseguibile
grazie ancora !!!
C.

 C.
  Prego,
  A.

scusa  ma la cosa non funziona ancora....
ho provato a compilare con il camndo 'make'   ma purtroppo  mi da
errore ...da coa può dipendere?
Secondo me c'è qualcosa di sbagliato in quello che faccio, ma nn
riesco ad accorgermene.... :-(, potresti per favore segnarmi
esattamente cosa dovrei fare passo passo per ottenere un eseguibile
debuggabile?..ovviamente in base a quanto già detto
grazie
C.
DrWarp ha scritto:
