tags:

views:

215

answers:

2

The default the profile file is from the executable is run and the file is called gmon.out. Is there any way to specify a new location?

I'm using gcc 3.4.6 on i386/linux2.6

A: 

To give a different file name to gprof:

gprof a.out gprof-foo.out

As to renaming them, set the GMON_OUT_PREFIX environment variable. I found this one by good ol' objdump on libc .... Naturally, the libc docs say nothing.

derobert
+1  A: 

Too badly, the environment variable GMON_OUT_PREFIX is not documented in the glibc. I got the following information from the web and tested on my machine.

if you set the environment variable GMON_OUT_PREFIX, then the output file is named as ${GMON_OUT_PREFIX}.[PID], the pid is the id of the profiled process. for example:

GMON_OUT_PREFIX=mygmon; gcc -o foo -pg foo.c

the gmon out file is: mygmon.12345, assuming the foo process id=12345.

jscoot