开发者

Change the name of gmon.out file when compiling with -pg [duplicate]

This question already has answers here: Any way to specify the location of profile data 开发者_运维知识库 (4 answers) Closed 9 years ago.

Is it possible to change the default name of the file gmon.out, which is created when the profile flag (-pg) is set when compiling with gcc, to, for example, [executable name].gmon.out?

I need this because I have more than one executables, which are located in the same directory, and have to run parallel.


Not so short, but actually the answer is YES - if using glibc (at least with version 2.11.1, which is the version I used to test this).

To have your -pg compiled and linked executable create different names then the default gmon.out, just set the environment variable GMON_OUT_PREFIX to a value of your choice and the profiling output will be written to [value of your choice].[pid] where [pid] is the process-ID of the process the profiling data belongs to.


In short, no. The profiling file created by running your program once it has been compiled with the -pg command is ALWAYS called gmon.out. However, once produced you can safely rename it to something else (for example foo.bar) and analyse it later using the command:

gprof test.exe foo.bar > analysis.txt
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜