web-dev-qa-db-ja.com

Pythonセグメンテーション違反:OSXで11

私はPythonで開発を始め、計算のようないくつかの簡単なコマンドを試しました。

しかし、時々python "Segmentation fault:11"で中止します。グーグルで私はそれに対する同様の問題や解決策を見つけられませんでした。

Pythonは自作でインストールされます。 home-brew doctorコマンドは、pythonインストールの問題を表示せず、最新です。

誰かがこれを修正する方法のアイデアがありますか?

OSXのクラッシュログは次のとおりです。 http://Pastebin.com/rKpPJKxJ

16
Peter C. Glade

うーん...言葉を広めます。以下はそれを修正したようです:

cd /Library/Frameworks/Python.framework/Versions/3.3 
cd ./lib/python3.3/lib-dynload 
Sudo mv readline.so readline.so.disabled 
19
wirednkod

これは、今週末にカットされた最新の候補で修正された、readlineの互換性に関連するpythonインタープリターのバグです。

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

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

この問題は、Ned Deilyからの引用で、 python-dev email list に書き込みます。

火曜日に、AppleはOSX 10.9(別名Mavericks)をリリースしました。Appleが利用可能になったため、すでに多くの関心が寄せられています。無料で、10.8、10.7、および(ほとんどの)10.6システムを使用しているユーザーが10.9に直接アップグレードするのが簡単になりました。残念ながら、OS X 10.9の現在のメンテナンスリリース(3.3.2および2.7.5)には問題があります。できるだけ早く新しいメンテナンスリリースを要求してください。

1つは、インタラクティブモードで実行するとインタプリタがクラッシュするという点で重要です( http://bugs.python.org/issue18458 )。この問題は、アップストリームが最終的に修正され、Appleが10.9で出荷された、libeditのreadline互換性レイヤーの長年の互換性の問題が原因でした。python.orgインストーラーはlibeditに動的にリンクするため、履歴インデックスの元の設計上の欠陥に対するreadline.cの元の回避策では、ユーザーが2番目のコマンドをインタラクティブに入力すると、10.9でsegfaultが発生するようになりました。良くありません。Ronaldは、実行時にreadline.soがどちらかを検出して操作できるようにする修正を考案しました。複数のOSXリリース間でバイナリ互換性を維持できるようにlibeditのバージョン。この修正は3.4.0アルファ版ですでにリリースされており、3.3および2.7ブランチにバックポートされ、そこでリリースされるのを待っています。過去12時間で、ユーザーから報告された問題の少なくとも4つの重複でした。元の問題を更新して10.9について明示的に言及し、NDAの対象ではなくなったため、経験の浅いユーザーがプロを回避するためのダウンロード可能なスクリプトを提供します。 readline.soを「削除」することによる問題。おそらく、Wordがリリースされると、開かれる重複する問題は少なくなりますが、影響は残ります。

6

HomebrewをインストールしたときにElCapitanでこの問題が発生し、PATH変数を調整して/usr/local/binを前面に配置する必要がありました。 Pythonバージョンは2.7.3でした。Python in /usr/binは2.7.10です。python = /usr/local/bin/のシンボリックリンクがトリックを行いました。

0
Neil