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. ...
随机推荐
- 移动端自动化环境搭建-RIDE的安装
A.安装依赖 RIDE 是 Robot Framework 测试数据的编辑器.它使测试用例的创建.运行.测试项目的组织可以在图形界面下完成. B.安装过程 下载地址:https://pypi.pyth ...
- Js根据Ip地址自动判断是哪个城市
var province = '' ;var city = '' ;jQuery.getScript("http://int.dpool.sina.com.cn/iplookup/iploo ...
- closest应用(向上查找最近的资料)
//新增网址信息function AddSitInfo(a) { var obj = $(a).closest("td[name='POIRestaurant_Reference_UR ...
- 浅析NRF51822合并文件之app_valid_setting_apply
[原创出品§转载请注明出处] 出处:http://www.cnblogs.com/libra13179/p/5787084.html 我们打开app_valid_setting_apply.hex如下 ...
- Javascript--装饰器模式和观察者模式
装饰器模式 (function(){//装饰一棵树,装饰器模式通过对对象的属性进行改变来装饰对象.需要一个设置属性的方法 var tree={}; tree.decorate=function(){ ...
- 在php里写sql查询需要注意的事情
---恢复内容开始--- 今天往php里写了一条sql查询, $sql = "select * from videos where vuser=".$u: $ret = mysql ...
- java简单日历
一.使用java的calendar类写一个简单的日历 package com.calendar; import java.util.Calendar; import java.util.Date; i ...
- PHP 7 Xdebug 深深的坑
zend_extension 7.0 下的 php.ini 配置 [XDebug];; Only Zend OR (!) XDebugzend_extension=f:\xampp\php\ext\p ...
- 关于js中闭包的理解
1.以前很不理解js中闭包的概念及使用,下面来看一下 function foo() { var a = 123; var b = 456; return function () { return a; ...
- Java 零基础之作业小练习
[练习1] 需求:输入学员的名称及总科目数并显示每项科目成绩的分数,算出总成绩. package demo2; import java.util.Scanner; //先import Scanner语 ...