Процесс завершен с кодом выхода 139 (прерывается сигналом 11: SIGSEGV)

Я пытаюсь выполнить скрипт Python, но получаю следующую ошибку:

Process finished with exit code 139 (interrupted by signal 11: SIGSEGV)

Я использую python 3.5.2 в ОС Linux Mint 18.1 Serena

Может кто-нибудь сказать мне, почему это происходит, и как я могу решить?

Ответы

Ответ 1

Сигнал SIGSEGV указывает на " нарушение сегментации " или "ошибка сегмента ". Более или менее, это равносильно чтению или записи адреса памяти, который не отображается в процессе.

Это указывает на ошибку в вашей программе. В программе на Python это либо ошибка в интерпретаторе, либо в используемом модуле расширения (и последняя является наиболее распространенной причиной).

Чтобы решить проблему, у вас есть несколько вариантов. Один из вариантов - создать минимальный, автономный, полный пример, который воспроизводит проблему, а затем отправить его в виде отчета об ошибке сопровождающим модуля расширения, который он использует.

Другой вариант - попытаться найти причину самостоятельно. GDB является ценным инструментом в таких начинаниях, как и отладочная сборка Python и всех используемых модулей расширения.

После того, как вы установили gdb, вы можете использовать его для запуска вашей программы на Python:

gdb --args python <more args if you want>

А затем используйте команды GDB для отслеживания проблемы. Если вы используете команду run ваша программа будет работать до тех пор, пока не произойдет сбой, и у вас будет возможность проверить состояние с помощью других команд GDB.

Ответ 2

Через некоторое время я обнаружил, что у меня запущена новая версия TensorFlow, которая выдает ошибку на старых компьютерах. Я решил проблему понижения версии TensorFlow до 1.4

Ответ 3

Другой возможной причиной (с которой я столкнулся сегодня) является то, что вы пытаетесь прочитать/записать открытый файл. В этом случае, просто закрыв файл и перезапустив скрипт, решил проблему.

Ответ 4

Когда я сталкиваюсь с этой проблемой, я понимаю, что есть некоторые проблемы с памятью. Я перезагрузил компьютер и решил это.

Ответ 5

Я решил эту проблему путем обновления библиотеки Python. В моем случае это было scikit-learn:

pip install -U scikit-learn

Ответ 6

Понизьте версию Pyproj до 1.9.6, она будет работать