Donde está el core.... ?
Hola, Estoy intentando debugear una aplicación en C++. Lo curioso es que no logro encontrar porqué no me saca el fichero core, una vez peta la aplicación compilada, obviamente, con el parámetro -g. $ ulimit unlimited $ cat /proc/sys/kernel/core_pattern core $ cat /proc/sys/kernel/core_uses_pid 0 alguna idea... ? S. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Re: Donde está el core.... ?
El 11 de mayo de 2009 19:02, Sever P A gnu.se...@gmail.com escribió: Hola, Hola, Estoy intentando debugear una aplicación en C++. Lo curioso es que no logro encontrar porqué no me saca el fichero core, una vez peta la aplicación compilada, obviamente, con el parámetro -g. Eso es irrelevante. Compilando con -g tendrás más información en el core, pero no es necesario para generarlo. $ ulimit unlimited Prueba con: $ ulimit -a Y mira si realmente puedes generar cores o no. Si es que no, actívalo con: $ ulimit -c unlimited Y vuelve a probar. El core debería aparecer el el directorio desde el que lanzas el proceso, y deberás tener permisos de escritura en él. $ cat /proc/sys/kernel/core_pattern core $ cat /proc/sys/kernel/core_uses_pid 0 alguna idea... ? Prueba lo que te he dicho. Un saludo, Edu,
Re: Donde está el core.... ?
Hola Edu, Prueba con: $ ulimit -a Y mira si realmente puedes generar cores o no. Si es que no, actívalo con: $ ulimit -c unlimited Y vuelve a probar. El core debería aparecer el el directorio desde el que lanzas el proceso, y deberás tener permisos de escritura en él. Creo que de poder, podría generar cores: $ ulimit -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 16382 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited Pero en el directorio de trabajo, no aparece ninguno cuando la aplicación peta con un valor de retorno 134... (es por eso que quiero el parámetro -g ;)): terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Muchas gracias, Edu. Alguna idea ??? S. -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Re: Donde está el core.... ?
El 11 de mayo de 2009 19:48, Sever P A gnu.se...@gmail.com escribió: Hola Edu, Hola de nuevo, Prueba con: $ ulimit -a Y mira si realmente puedes generar cores o no. Si es que no, actívalo con: $ ulimit -c unlimited Y vuelve a probar. El core debería aparecer el el directorio desde el que lanzas el proceso, y deberás tener permisos de escritura en él. Creo que de poder, podría generar cores: $ ulimit -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 16382 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size(512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited Ok. Pero en el directorio de trabajo, no aparece ninguno cuando la aplicación peta con un valor de retorno 134... (es por eso que quiero el parámetro -g ;)): terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Muchas gracias, Edu. Alguna idea ??? ¿No estarás usando OCCI en Oracle 11g? Cuando enlazo con esta librería me deja los cores en: $HOME/oradiag_$LOGNAME O tal vez alguna otra que tenga un comportamiento similar. A parte de esto, no se me ocurre nada más. Saludos.