[英]Installing ipython with readline on the mac
我在Mac OS 10.5上使用ipython和python 2.5.1(我實際上想使用ipython for 2.6.1,但它似乎不可用?)
我通過easy_install安裝了ipython。 它工作但缺少gnu readline(用ctrl-R很好地搜索命令行歷史記錄等)
我找到了一篇博文和其他消息來源說這可以解決
sudo easy_install -f http://ipython.scipy.org/dist/ readline
但是,這會導致readline.c
構建錯誤,尤其是未聲明的函數,如rl_compentry_func_t
和rl_catch_signals
。
有沒有人見過這些錯誤? 還有另一種方法可以使用readline安裝ipython嗎?
要在不使用MacPorts的情況下在Snow Leopard或Lion上安裝ipython,您只需執行以下操作:
sudo easy_install readline ipython
(注意,如果你使用“pip”來安裝readline,那么ipython將不會看到readline庫,不知道為什么)。
編輯:
如果您安裝了ipython,請將其刪除
sudo pip uninstall ipython
要么
pip uninstall ipython #for virtualenvs
然后確保首先安裝了readline並重新安裝iptyhon
pip install readline ipython
由於某些原因,如果在安裝過程中沒有readline,它將自行安裝而不支持readline或使用默認的mac readline。
這對我有用(我使用python 2.7,對於你需要編輯的其他版本):
cd /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
sudo mv readline.so readline.so.bak
你想要安裝readline(點子,自制軟件,macports等)
pip install -U readline
成功! 它適用於virtualenv和virtualenvwrapper,而且無需修改ipython :)
MacOS Mavericks唯一的工作方式是:
workon myproject_name
pip uninstall readline ipython
easy_install readline
pip install ipython
它在我的MacOS上工作得很好並且測試了很長時間。
您可以使用MacPorts基本上使用一個命令安裝所需的一切。 首先從http://www.macports.org/下載並安裝MacPorts。
然后在終端中執行以下操作:1)sudo port -v selfupdate
2)sudo port -v install py26-ipython
那將為你安裝python2.6,ipython for python 2.6和readline。 啟動ipython的命令位於/opt/local/bin/ipython2.6
如果您不想使用端口,請另外選擇。 警告:這不是安全升級。
正常安裝ipython
和readline
:
sudo easy_install -f http://ipython.scipy.org/dist/ readline ipython
找到readline
蛋的完整路徑。 對於python 2.6,這可能是:
/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/readline-2.5.1-py2.6-macosx-10.3-fat.egg
使用您喜歡的文本編輯器編輯ipython
:
vim `which ipython`
在sys.exit
文件的最后一行之前,插入:
sys.path.insert(0,'PATH_TO_READLINE_EGG')
保存並退出( :wq
)。
檢查readline工作正常:
ipython
“我真的想使用ipython for 2.6.1”
它是可用的。 我在os x上使用2.6.1。 您只需要安裝官方的python 2.6.1發行版,然后使用easy_install安裝ipython。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.