【转】Centos升级Python 2.7.12并安装pip、ipython
Centos系统一般默认就安装有Python2.6.6版本,不少软件需要2.7以上的,通过包管理工具安装不了最新的版本,通过源码编译可以方便安装指定版本,只需要把下面版本的数字换成你想要的版本号。
1.安装步骤
下载源码
wget http://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
在下载目录解压源码
tar -zxvf Python-2.7.12.tgz
进入解压后的文件夹
cd Python-2.7.12
在编译前先在/usr/local建一个文件夹python2.7.12(作为python的安装路径,以免覆盖老的版本,新旧版本可以共存的)
mkdir /usr/local/python2.7.12
编译前需要安装下面依赖,否则下面安装pip就会出错
yum install openssl openssl-devel zlib-devel gcc sqlite-devel -y
安装完依赖后执行下面命令
vim ./Modules/Setup.dist
找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注释并保存(即去掉#号)
在解压缩后的目录下编译安装
./configure --prefix=/usr/local/python2.7.12 --with-zlib
make && make install
此时没有覆盖老版本,再将原来/usr/bin/python链接改为别的名字
mv /usr/bin/python /usr/bin/python2.6.6
再建立新版本python的软链接
ln -s /usr/local/python2.7.12/bin/python2.7 /usr/bin/python
这个时候在命令行输入 python
就会显示出python的新版本信息
Python 2.7.12 (default, Oct 13 2016, 03:17:14)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
2.修改yum配置文件
之所以要保留旧版本,因为yum依赖Python2.6,改下yum的配置文件,指定旧的Python版本就可以了。
vim /usr/bin/yum,将第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6.6
3.安装最新版本的pip
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
之前有旧版本的话就先删掉rm -rf /usr/bin/pip)
ln -s /usr/local/python2.7.12/bin/pip2.7 /usr/bin/pip
看下pip的版本
pip -V
pip安装完毕,现在可以用它下载安装各种包了
安装ipython
使用pip方法安装
pip install ipython
安装readline扩展模块
yum install readline-devel
yum install patch
pip install readline
需要将ipython的路径软链接添加到/usr/bin目录下
ln -s /usr/local/python2.7.12/bin/ipython /usr/bin/ipython
至此ipython 安装完毕
本文参考链接:http://blog.fazero.me/2016/10/13/centos-update-python/
【转】Centos升级Python 2.7.12并安装pip、ipython的更多相关文章
- Centos 升级 python
昨天把redmine的测试环境给搞Over了,想了下,干脆直接把环境给整成docker化的,配置环境的时候,安装docker-compose需要python2.7支持. CentOS 6 系统默认 P ...
- [Python爬虫] 在Windows下安装PIP+Phantomjs+Selenium
最近准备深入学习Python相关的爬虫知识了,如果说在使用Python爬取相对正规的网页使用"urllib2 + BeautifulSoup + 正则表达式"就能搞定的话:那么动态 ...
- python学习笔记04:安装pip
如果是从python官网下载的python版本(2.7.9或3.4)的安装包,其中已经内置了pip工具.那么只需要升级pip即可. 检测是否已安装pip: python -m pip --versio ...
- liunx CentOS 升级Python版本
CentOS python版本是V2.6.6,升级3.4.3. 1.下载 安装包:wget http://www.python.org/ftp/python/3.4.3/Python-3.4.3.tg ...
- centos升级python到2.7
最近在阿里云租了一个云主机,打算部署自己的个人网站,但是centos系统的默认Python是2.6版本,打算升级到2.7.3! 查看python的版本 #python -V Python 2.6.6 ...
- CentOS升级Python的方法
centOS内核版本为:3.10.101-1.el6.elrepo.x86_64 1,下载Python安装包 wget http://www.python.org/ftp/python/2.7.6/P ...
- centos升级python(从2.6.6升级到2.7.8)
***先安装readline,否则升级后python回退和方向键不能使用 yum install readline-devel.x86_64 1.#wget www.python.org/ftp/ ...
- CentOS升级Python 2.6到2.7
查看python的版本 python -V Python 2.6.6 下载Python Python-2.7.8.tar.xz 链接:http://pan.baidu.com/s/1i4 ...
- Centos升级Python及pip
因为CentOS系统中旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装. 1.从官网下载: wget https://www.python.org/ftp/python/ ...
随机推荐
- PHP 生成验证码
//加载 vendor目录的phpqrcode.类文件 $a = vendor("phpqrcode.qrlib");// 创建目录 echo mkdir(__ROOT__.'/U ...
- 缓存Cache
转载自 博客futan 这篇文章将全面介绍有关 缓存 ( 互动百科 | 维基百科 )cache以及利用PHP写缓存caching的技术. 什么是缓存Cache? 为什么人们要使用它? 缓存 Cach ...
- javascript中正则表达式的基础语法
× 目录 [1]定义 [2]特点 [3]元字符[4]转义字符[5]字符组[6]量词[7]括号[8]选择[9]断言[10]模式[11]优先级[12]局限性 前面的话 正则表达式在人们的印象中可能是一堆无 ...
- C#.NET 通用控件数据源绑定类
using System.Data; using System.Collections; using System.Collections.Generic; using System.Web.UI; ...
- Oracle Partition By 的使用
1.概述 Parttion by 关键字是Oracle中分析性函数的一部分,它和聚合函数不同的地方在于它能够返回一个分组中的多条记录,儿聚合函数一般只有一条反映统计值的结果. 2.使用方式 场景:查询 ...
- REST WCF Service中的WebMessageBodyStyle
这个参数是个枚举包括如下值: WebMessageBodyStyle.Bare WebMessageBodyStyle.Wrapped WebMessageBodyStyle.WrappedReque ...
- Java三行代码搞定MD5加密,测试5c短信网关的demo
看到之前项目中,关于MD5加密的足足写了一个辅助类. 其实在Java中大部分都帮你实现好了,完成MD5加密,主要就三行代码: /** * 对字符串md5加密 * * @param str * @ret ...
- Hadoop集群datanode磁盘不均衡的解决方案
一.引言: Hadoop的HDFS集群非常容易出现机器与机器之间磁盘利用率不平衡的情况,比如集群中添加新的数据节点,节点与节点之间磁盘大小不一样等等.当hdfs出现不平衡状况的时候,将引发很多问题,比 ...
- 阿里巴巴矢量图标的使用Demo
一.html网页的使用步骤: 1. 登录进入阿里巴巴矢量图标库中,选择自己喜欢的图标,放到购物车,http://www.iconfont.cn/plus/manage/index?manage_typ ...
- J2EE开发时的包命名规则
http://www.blogjava.net/paulwong/archive/2012/04/15/374675.html 转一个J2EE开发时的包命名规则,养成良好的开发习惯 代码编写规范目的: ...