CentOS 6.5升级Python和安装IPython
<转自:http://www.noanylove.com/2014/10/centos-6-5-sheng-ji-python-he-an-zhuang-ipython/>自己常用.以做备份
以前用CentOS 5.8的时候,写过一篇《升级CentOS的Python》。后来换成了CentOS 6.5,系统自带的Python版本是2.6.6,就懒得折腾。最近安装IPython,才发现IPython 2.3需要Python 2.7或者大于等于3.3,如图一所示。只有升级Python了。
图一:安装IPython需求
已经安装好gcc等编译工具。系统自带Python的版本和安装位置如图二所示:
图二:系统自带Python的安装信息
安装步骤
1、安装开发库文件
编译Python只要有gcc编译器就足够了,但一些扩展模块需要额外的库,否则一些Python模块将不可用(比如Python的zlib模块需要zlib-devel,ssl模块需要openssl-devel)。用户可以根据需要,选择性的安装这些扩展模块。这里我们安装zlib、ssl和sqlite3的库文件。
yum install zlib-devel openssl-devel sqlite-devel
2、下载Python
目前最新版本为2.7.8。
wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz
tar zxvf Python-2.7.8.tgz
3、编译安装
为了方便管理,将Python安装到/usr/local/python路径下。
cd Python-2.7.8
./configure --prefix=/usr/local/python
make
make install
4、替换系统自带Python
安装后,Python 2.7.8的可执行文件位于/usr/local/python/bin。先将系统自带的Python重命名为python2.6,再创建新的Python到/usr/bin目录下的符号链接。
mv /usr/bin/python /usr/bin/python2.6 #其实不要这句也行,加上了预防万一
ln -sf /usr/local/python/bin/python2.7 /usr/bin/python
再执行python --version
,可以看到已经是2.7.8版了,如图三所示。
图三:成功安装Python 2.7.8
5、修正yum
现在,系统默认调用Python 2.7.8,执行yum会出现如图四所示错误。
图四:yum无法执行
解决方法:将/usr/bin/yum文件开头的第一行代码:
#!/usr/bin/python
修改为:
#!/usr/bin/python2.6
6、安装setuptools和pip
玩Python不能没有setuptools和pip。这里使用pip提供的安装脚本,自动安装setuptools和pip。
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
因为之前更改了Python的安装目录,Python扩展模块的可执行文件会被安装到/usr/local/python/bin目录下。为了能够直接运行这些文件,我们要么创建到/usr/bin目录下的符号链接,要么将/usr/local/python/bin目录添加到PATH环境变量中。为了避免不必要的冲突,这里采用创建符号链接的方式。
ln -sf /usr/local/python/bin/pip /usr/bin/pip
ln -sf /usr/local/python/bin/easy_install /usr/bin/easy_install
7、安装IPython
有了pip,安装IPython简直So easy。(同样将IPython的可执行文件链接到/usr/bin目录下)
pip install ipython
ln -s /usr/local/python/bin/ipython /usr/bin/ipython
如图五所示。
图五:安装IPython
8、安装readline扩展模块
没有readline支持的IPython弱得没法用。这里安装readline:
yum install readline-devel
yum install patch #相信我,不安装这个就无法编译readline
pip install readline
之后,IPython的高亮显示和代码补完等功能就可以用了,如图六所示。当然,现在的IPython只具备了最基本的功能,还有一些模块没有安装,所以无法使用诸如并行计算、Qt Console、Notebook等功能。不过这不是我们这篇文章要讨论的内容了。以后有时间会写一篇安装使用IPython其他模块和功能的文章。
图六:安装好的IPython
CentOS 6.5升级Python和安装IPython的更多相关文章
- CentOS 6.5升级Python和安装IPython(亲测可用)
python的升级(2.6------>2.7.x) 如下地址:http://note.youdao.com/share/?id=2928aeda020123bfdf2a2c76bc75e4a7 ...
- CentOS 6下升级Python版本
CentOS6.8默认的python版本是2.6,而现在好多python组件开始只支持2.7以上的版本,比如说我今天遇到的pip install pysqlite,升级python版本是一个痛苦但又常 ...
- CentOs 6.x 升级 Python 版本【转】
在CentOS 6.X 上面安装 Python 2.7.X CentOS 6.X 自带的python版本是 2.6 , 由于工作需要,很多时候需要2.7版本.所以需要进行版本升级.由于一些系统工具和服 ...
- linux centos系统下升级python版本
本文参考资料:https://www.cnblogs.com/leon-zyl/p/8422699.html,https://blog.csdn.net/tpc1990519/article/deta ...
- CentOS 6.5升级Python后yum不可用的解决方案
因开发需要,今天把CentOS 6.5自带的Python2.6.6升级到了Python2.7.3.按照如下步骤进行升级 1.查看当前系统python的版本 python -V 2.下载2.7.3版本的 ...
- CentOS 7下升级Python版本到3.x系列
由于python官方已宣布2.x系列即将停止支持,为了向前看,我们升级系统的python版本为3.x系列服务器系统为当前最新的CentOS 7.4 1.安装前查看当前系统下的python版本号 # p ...
- CentOS 7下升级python版本到3.X
由于python官方已宣布2.x系列即将停止支持,为了向前看,我们升级系统的python版本为3.x系列服务器系统为当前最新的CentOS 7.4 1.安装前查看当前系统下的python版本号 # p ...
- Linux 下升级python和安装pip
Linux版本升级: 1. 首先确认Linux操作系统中自带的python 版本时候与自己所需要的版本一致 所有的python版本都在https://www.python.org/ftp/pytho ...
- centos 6.4 升级python到版本2.7.12
注意:需要root权限 查看python版本:python --version 1.下载Python-2.7.12wget https://www.python.org/ftp/python/2.7. ...
随机推荐
- NHibernate系列文章二十三:NHibernate查询之Criteria查询(附程序下载)
摘要 上一篇文章介绍了NHibernate HQL,他的缺点是不能够在编译时发现问题.如果数据库表结构有改动引起了实体关系映射的类有改动,要同时修改这些HQL字符串.这篇文章介绍NHibernate面 ...
- thinkphp 配合mongodb
首先在config.php里面添加配合mongodb的数据库连接 'DB_TYPE'=>'mongo',// 数据库类型 'DB_HOST'=>'localhost',// 服务器地址 ' ...
- delphi 类方法、类变量、类常量、类属性的研究,自己的研究
群里我师傅给我的答案: unit Unit4; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Vari ...
- delphi判断文件类型
function getFileType(inputFile:string):string;const JPEG_FLAG_BEGIN = $D8FF; JPEG_FLAG_END = $D9FF; ...
- toolkit:Accordion DataTemplate ListBox TextBlock Interaction.Triggers
困扰好几个小时的问题终于解决了,本人系菜鸟,使用MVVM设计模式,绑定DataTemplate的Command,需要使用 DataContent的资源,否则无法触发ICommand ClickChil ...
- jQuery MiniUI Demo
http://www.miniui.com/demo/#src=datagrid/datagrid.html
- HTML5 CANVAS画图 beginPath和closePath
beginPath这个canvas函数我很早就讲过了,他的作用很简单,就是开始一段新路径,我们先来看下面的一小段代码: var ctx = document.getElementById('cvs') ...
- SQL SELECT SET
SELECT SET 同时对多个变量同时赋值时 支持 不支持 表达式返回多个值时 将返回的最后一个值赋给变量 出错 表达式未返回值时 变量保持原值 变量被赋null值
- BASE64编码和解码(VC源代码) 并 内存加载 CImage 图像
BASE64可以用来将binary的字节序列数据编码成ASCII字符序列构成的文本.完整的BASE64定义可见 RFC1421和 RFC2045.编码后的数据比原始数据略长,为原来的4/3.在电子 ...
- WPF的"路径标记语法"
在此之前我们先了解一下WPF的"路径标记语法" M:表示绘制起点 // M 0,0 L:表示绘制直线 (H:横线 V:竖线) // L 100,0 C:三次方贝塞尔曲线 // ...