Saluti,Come creare un supporto gprof per un programma creato con SCons?
Ecco il mio file SConstruct:
env = Environment()
env.Append(CCFLAGS=['-g','-pg'])
env.Program(target='program1', source= ['program1.c'])
Anche qui è l'uscita della compilation:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -o program1.o -c -g -pg program1.c
gcc -o program1 program1.o
scons: done building targets.
Come potete vedere mi passa l'opzione "-pg" per l'ambiente di costruzione. Dopo aver creato, eseguo il programma per generare "gmon.out" ma non viene prodotto.
Qualcuno può confermare questo problema? o avere una soluzione?
Grazie.
Aggiornamento:
grazie ai consigli qui data, il file SConstruct di lavoro aggiornato è il seguente. Il linker richiede la flag, quindi per passarlo attraverso scons, deve essere utilizzata l'opzione "LINKFLAGS".
env = Environment()
env.Append(CCFLAGS=['-g','-pg'], LINKFLAGS=['-pg'])
env.Program(target='program1', source= ['program1.c'])
uscita di compilazione:
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -o program1.o -c -g -pg program1.c
gcc -o program1 -pg program1.o
scons: done building targets.
Annotare il "-pg" aggiuntivo in fase di collegamento.
Grazie. Il linker ha solo richiesto l'opzione "-pg" come suggerito. SCons vede questa variabile come "LINKFLAGS". – kobrien