2013-09-12 3 views
13

Я начинаю разработку с помощью python и пробую некоторые простые команды, такие как вычисления.Ошибка сегментации Python: 11 на OSX

Но несколько раз прерывание python с «ошибкой сегментации: 11» В google я не нашел аналогичную проблему или решение для этого.

Python установлен с доморощенным. Команда врача домашнего пива не показывает никаких проблем для установки python и обновляется.

У кого-нибудь есть идея, как это исправить?

Вот OSX Краш Log: http://pastebin.com/rKpPJKxJ

+2

Я в Маверикс, и у меня такая же проблема с Python 2.7.5 – jackcogdill

ответ

0

Есть ли причина, что вы не просто использовать официальную версию, которая тщательно проверяется с помощью встроенного набора тестов, прежде чем отпустить?

См.: http://www.python.org/download/releases/2.7.5/ или http://www.python.org/download/releases/3.3.2/ и загрузить соответствующий dmg. Если у вас все еще есть проблемы с официальной версией, вы, вероятно, либо делаете что-то очень плохое (переполнение стека или повреждение памяти с использованием чего-то типа ctypes), у вас есть проблемы с оборудованием, либо у вас есть коррумпированное программное обеспечение в вашей системе.

+0

Пробовал официальные версии, но та же проблема. Очистите всю систему. Тот же вопрос. Как я могу понять проблему? –

+0

Какой код вы используете, что приводит к его сбою? – Max

+0

например. простые вычисления, например (50-5 * 6)/4. В первый раз он возвращает результат, а во второй попытке я получил ошибку сегментации. –

17

Хммм ... распространение слова. Далее, кажется, что он установил его:

cd /Library/Frameworks/Python.framework/Versions/3.3 
cd ./lib/python3.3/lib-dynload 
sudo mv readline.so readline.so.disabled 
+1

Работал для меня! Возможно, очевидно, но просто не забудьте использовать ВАШУ версию Python и не обязательно 3.3, если это не то, что вы установили. У меня работает 2,7, и это исправление сработало и для меня – Pinwheeler

+2

Если вы используете Homebrew, сделайте это в /usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2 .7/lib-dynload/(например, для 2.7.5) – yanjost

+0

Было ли это с установкой pythonbrew, и это сделало невозможным управление командой. Т.е., ctrl + a, ctrl + e, клавиши со стрелками, весь мусор печати. – Rebs

6

Это ошибка в интерпретаторе питона, связанных с Readline совместимости, которая была исправлена ​​в самых последних кандидатов, которые были вырезаны в эти выходные.

http://python.org/download/releases/2.7.6/

http://python.org/download/releases/3.3.3/

вопрос, цитируя Ned Deily, писать на python-dev email list:

Во вторник, Apple выпустила OS X 10.9 (Mavericks) также известные. Там уже проявили к нему большой интерес, отчасти потому, что Apple сделала его доступным для бесплатно и облегчила пользователям 10,8, 10,7 и (большинство) 10,6 систем , чтобы перейти на 10.9. К сожалению, есть проблемы с нашими текущими версиями обслуживания (3.3.2 и 2.7.5) на OS X 10.9, которые в кратчайшие сроки требуют новых версий обслуживания .

Один из них имеет решающее значение, поскольку он вызывает сбой интерпретатора при работе в интерактивном режиме (http://bugs.python.org/issue18458). Проблема заключалась в том, что - давняя проблема совместимости в уровне совместимости с readline совместимости libedit , который, наконец, был исправлен, и Apple теперь отправлена ​​в 10.9. Поскольку установщики python.org динамически ссылаются на libedit, исходное обходное решение в readline.c для первоначального дефекта дизайна при индексировании истории теперь вызывает segfault на 10,9, когда пользователь вводит вторую команду в интерактивном режиме. Не хорошо. Рональд разработал исправление, позволяющее readline.so во время выполнения обнаружить и работать с любой версией libedit, чтобы мы продолжали поддерживать двоичную совместимость с несколькими версиями OS X. Это исправление уже вышло в 3.4.0 альфах и передано в филиалы 3.3 и 2.7, ожидая освобождения .Всего за последние 12 часов было зарегистрировано не менее четырех дубликатов . Я обновил исходную проблему до явно , упомянув 10.9, теперь, когда она больше не находится под NDA, и предоставить загружаемый скрипт для неопытных пользователей, чтобы решить проблему с помощью «удаление» readline.so. Предположительно, по мере того, как слово выйдет, будет уменьшено количество повторяющихся выпусков , но влияние останется.

Смежные вопросы