使用gcc编译时未创建分析数据

使用gcc编译时未创建分析数据,gcc,gprof,Gcc,Gprof,我想使用gprof评测选项来加速我的代码。我是用gcc编译的。问题是没有创建“gmon.out”之类的输出文件。以下是我正在使用的Makefile示例: 我对makefile了解不多,你知道问题出在哪里吗…? 您的程序将在退出之前将配置文件数据写入名为gmon.out的文件中 所以,如果make生成的是您的程序,而不是gmon.out,那么就没有问题了 (无论如何,您应该删除-p,并确保您使用-pg进行编译和链接)。好的,这只是'-p'的一个问题,现在它可以工作了,谢谢! CC = gcc

我想使用gprof评测选项来加速我的代码。我是用gcc编译的。问题是没有创建“gmon.out”之类的输出文件。以下是我正在使用的Makefile示例:

我对makefile了解不多,你知道问题出在哪里吗…?

您的程序将在退出之前将配置文件数据写入名为gmon.out的文件中

所以,如果make生成的是您的程序,而不是gmon.out,那么就没有问题了


(无论如何,您应该删除
-p
,并确保您使用
-pg
进行编译和链接)。

好的,这只是'-p'的一个问题,现在它可以工作了,谢谢!
CC =  gcc
LD = gcc
#LIBGSL = -L/usr/local/lib -lgsl -lgslcblas
#LIBGSL = -L/usr/lib/x86_64-linux-gnu -lgsl -lgslcblas -lm
#LIBGSL = -L/home/dupont/gsl/gsl-2.4/lib -lgsl -lgslcblas -lm
LIBGSL = -L/n1/soft/64bit/lib -lgsl -lgslcblas -lm

CFLAGSRELEASE = -g -fopenmp -O -Wall -c -pg -I/n1/hhsoft/64bit/include
LFLAGSRELEASE = -g -pg -lm -Wl,--rpath -Wl,/usr/local/lib $(LIBGSL)

CFLAGSDEBUG = -g -p -pg  -Wall
LFLAGSDEBUG = -lm 

CFLAGSDEBUG = -g -p -pg -Wall -W    # -DDEBUG_OUTPUT
LFLAGSDEBUG =  -lm -p -pg -Wl,--rpath -Wl,/usr/local/lib $(LIBGSL) 

LIBS= -L/home/dupont/folder/soft/pgplot -lm -lcpgplot /home/dupont/folder/soft/pgplot/libpgplot.a  -L/usr/X11R6/lib -lX11

CFLAGS = $(CFLAGSRELEASE)
LFLAGS = $(LFLAGSRELEASE)