Falha de segmentação Imagemagick

1

Eu Imagemagick compilado estaticamente . Converter imagens funciona bem até agora. Mas quando eu executo identify -list delegate ele mostra meus delegados, mas sai com "Aborted (core dumped)".

Este é o link strace -f

O que eu poderia ter feito de errado?

    
por kvz 06.03.2014 / 10:11

1 resposta

0

Graças ao comentário do @ umläute, usei gdb para depuração aprimorada. Aqui está como eu backtraced ./target/bin/identify -list delegate :

$ gdb ./target/bin/identify
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/src/imagemagick-static/target/bin/identify...done.
(gdb) run -list delegate

Isso gerou uma saída muito mais útil do que a strace:

Program received signal SIGSEGV, Segmentation fault.
0x000000000072eaa5 in gvFreeContext ()

Pesquisando gvFreeContext permitiu que eu reduzisse ainda mais a depuração no Graphviz.

Michael Mrozek sugeriu então digitar

(gdb) bt

Isso dá o backtrace completo:

#0  0x000000000094ce21 in gvFreeContext ()
#1  0x000000000049fe4f in UnregisterDOTImage ()
#2  0x0000000000452e5c in UnregisterStaticModules ()
#3  0x0000000000423013 in MagickCoreTerminus ()
#4  0x000000000040cc38 in IdentifyMain ()
#5  0x000000000040cc64 in main ()

Ainda não solucionei meu segfault, mas gdb backtraces parecem ser o caminho para depurá-los quando nem stderr nem dmesg nem kern.log contêm boas pistas.

    
por 06.03.2014 / 15:12