tag mp3tag kid3 editar easytag linux gcc gprof

mp3tag - mp3 tag linux



Cualquier forma de especificar la ubicaciĆ³n de los datos de perfil (4)

Se ejecuta el archivo predeterminado del archivo de perfil desde el archivo ejecutable y el archivo se llama gmon.out . ¿Hay alguna forma de especificar una nueva ubicación?

Estoy usando gcc 3.4.6 en i386 / linux2.6


Para dar un nombre de archivo diferente a gprof:

gprof a.out gprof-foo.out

En cuanto a cambiarles el nombre, configure la variable de entorno GMON_OUT_PREFIX. Encontré este por good ol ''objdump on libc .... Naturalmente, los documentos libc no dicen nada.


La solución de jscoot funcionó para mí. pero la configuración de GMON_OUT_PREFIX es importante en el momento de la ejecución, no en el tiempo de compilación.


Encontré el mismo problema la semana pasada y lo resolví de la siguiente manera. La idea aquí es cambiar el directorio actual del proceso a donde desee generar el archivo gmon.out. el nombre del archivo no se puede cambiar de esta manera. Le permite cambiar dónde puede guardar el archivo.

#ifdef GPROF /* so we can gprof */ if (1) { char tmpdir[32]; snprintf(tmpdir, 32, "/tmp/%05d", mypid); mkdir(tmpdir, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH); chdir(tmpdir); } #endif


Demasiado mal, la variable de entorno GMON_OUT_PREFIX no está documentada en glibc. Obtuve la siguiente información de la web y la probé en mi máquina.

si configura la variable de entorno GMON_OUT_PREFIX , el archivo de salida se llama ${GMON_OUT_PREFIX}.[PID] , el pid es la identificación del proceso perfilado.

Por ejemplo:

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

el archivo de salida es: mygmon.12345 , suponiendo que el proceso de foo id = 12345.