问候,
这是我的 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”。