Puede usar el núcleo con gdb de muchas maneras, pero pasar los parámetros que se pasarán a ejecutable en gdb no es la forma de usar el archivo central. Esta también podría ser la razón por la que obtuviste ese error. Puede utilizar el archivo central en las formas siguientes:
gdb <executable> <core-file>
o gdb <executable> -c <core-file>
o
gdb <executable>
...
(gdb) core <core-file>
Cuando se utiliza el archivo central que no tienen que pasar argumentos. El escenario de bloqueo se muestra en gdb (comprobado con gdb Versión 7.1 en Ubuntu). Por ejemplo:
$ ./crash -p param1 -o param2
Segmentation fault (core dumped)
$ gdb ./crash core
GNU gdb (GDB) 7.1-ubuntu
...
Core was generated by `./crash -p param1 -o param2'. <<<<< See this line shows crash scenario
Program terminated with signal 11, Segmentation fault.
#0 __strlen_ia32() at ../sysdeps/i386/i686/multiarch/../../i586/strlen.S:99
99 ../sysdeps/i386/i686/multiarch/../../i586/strlen.S: No such file or directory.
in ../sysdeps/i386/i686/multiarch/../../i586/strlen.S
(gdb)
Si desea pasar parámetros al ejecutable a ser depurado en uso GDB --args
.
Por ejemplo:
$ gdb --args ./crash -p param1 -o param2
GNU gdb (GDB) 7.1-ubuntu
...
(gdb) r
Starting program: /home/@@@@/crash -p param1 -o param2
Program received signal SIGSEGV, Segmentation fault.
__strlen_ia32() at ../sysdeps/i386/i686/multiarch/../../i586/strlen.S:99
99 ../sysdeps/i386/i686/multiarch/../../i586/strlen.S: No such file or directory.
in ../sysdeps/i386/i686/multiarch/../../i586/strlen.S
(gdb)
páginas hombre será útil para ver otras opciones BGF.
¿Está seguro de que su 'exe' no es un script de shell (para establecer algunas variables, etc.) como p. Ej. 'firefox' está en Linux? –
http://unix.stackexchange.com/questions/89933/how-to-view-core-files-for-debugging-purposes-in-linux/202443#202443 –