CentOS 5安装IPython
话说上次给那台装CentOS 5的免费VPS升级了Python,这次我们继续来安装IPython。
一.IPython是什么
IPython是Python的交互式Shell,提供了代码自动补完,自动缩进,高亮显示,执行Shell命令等非常有用的特性。特别是它的代码补完功能,例如:在输入zlib.之后按下Tab键,IPython会列出zlib模块下所有的属性、方法和类,如图一所示,绝对是居家旅行,杀人放火之必备神器啊。
图一:IPython代码自动补完
二.安装IPython
IPython的安装很简单,按照《升级CentOS的Python》 http://www.linuxidc.com/Linux/2014-04/100039.htm 安装好Python和setuptools之后,我们直接用setuptools提供的easy_install命令就能自动安装好所需要的模块。在远程终端中执行下列命令:
easy_install install ipython
虽然现在IPython能用了,但由于缺少Python readline模块,它的代码自动补完,自动缩进,高亮显示这三个最有用的特性都不可用,如图二所示。
图二:缺少readline支持的IPython
看到它最上面的提示了吧:
WARNING: IPython History requires SQLite, your history will not be saved
WARNING: Readline services not available or not loaded.WARNING: The auto-indent feature requires the readline
换句话说,IPython这丫的现在就等于是个废物。好吧,我们来解决readline的问题。至于它提示缺少的SQLite模块,本来是Python的内置模块,但是由于我们当初编译Python时没有安装sqlite-devel,所以Python现在不支持这个库,不过这这几乎不影响我们的使用。
三.安装readline
先来安装编译Python readline所需要的readline-devel,执行:
yum install -y readline-devel
Tips:devel是Development的缩写。readline-devel包,包含了readline模块的申明和头文件等,给使用了readline模块的程序提供编译支持。前面提到的sqlite-devel、zlib-devel等,功能于此类同。
接着用easy_install安装Python的readline模块,执行:
easy_install readline
结果报错,如图三所示。
图三:安装readline报错
可以看到,最后三行提示:
gcc: readline/libreadline.a: No such file or directory
gcc: readline/libhistory.a: No such file or directory
error: Setup script exited with error: command 'gcc' failed with exit status 1