Seguindo meuh sugestão Eu corri o Python com strace
e observei as diferenças entre interativo e não interativo Python.
O Python interativo leu meu ~/.inputrc
, pois usa readline , e isso foi o arquivo que estava causando o Segmentation fault (core dumped)
.
Eu tinha um ~/.inputrc
que veio de outra máquina (Ubuntu) e dentro dele copiei cegamente o conteúdo do (Ubuntu) /usr/share/doc/bash/inputrc.arrows
.
O conteúdo de /usr/share/doc/bash/inputrc.arrows
é:
# This file controls the behaviour of line input editing for
# programs that use the Gnu Readline library.
#
# Arrow keys in keypad mode
#
"\C-[OD" backward-char
"\C-[OC" forward-char
"\C-[OA" previous-history
"\C-[OB" next-history
#
# Arrow keys in ANSI mode
#
"\C-[[D" backward-char
"\C-[[C" forward-char
"\C-[[A" previous-history
"\C-[[B" next-history
#
# Arrow keys in 8 bit keypad mode
#
"\C-M-OD" backward-char
"\C-M-OC" forward-char
"\C-M-OA" previous-history
"\C-M-OB" next-history
#
# Arrow keys in 8 bit ANSI mode
#
"\C-M-[D" backward-char
"\C-M-[C" forward-char
"\C-M-[A" previous-history
"\C-M-[B" next-history
O 8 bit keypad mode
e o 8 bit ANSI mode
foram a causa específica do problema, portanto, depois de removê-los, tudo funciona bem.
Obrigado ao thrig por me indicar gdb
e ser paciente o suficiente, pois nunca usei essa ferramenta antes. O mesmo com meuh que sugeriu usar strace
, que também era novo para mim. Eu não tinha ideia de onde começar a depuração, pois sou apenas um usuário casual que gosta de aprender coisas novas. Ótima comunidade!