Привет,
Вот мой файл SConstruct:
env = Environment()
env.Append(CCFLAGS=['-g','-pg'])
env.Program(target='program1', source= ['program1.c'])
Также вот результат компиляции:
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.
Как видите, я передаю параметр "-pg" в среду сборки. После сборки я запускаю программу для создания "gmon.out", но она не создается.
Кто-нибудь может подтвердить эту проблему? или есть решение?
Спасибо.
Обновление:
Благодаря приведенным здесь советам обновленный рабочий файл SConstruct выглядит следующим образом. Компоновщику требуется этот флаг, поэтому для его передачи через scons необходимо использовать опцию "LINKFLAGS".
env = Environment()
env.Append(CCFLAGS=['-g','-pg'], LINKFLAGS=['-pg'])
env.Program(target='program1', source= ['program1.c'])
Результат компиляции:
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.
Обратите внимание на дополнительный «-pg» на этапе связывания.