Centos升级Python 2.7.12并安装最新pip
title: Centos升级Python 2.7.12并安装最新pip
tags: 服务器,Python
grammar_cjkRuby: true
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 -y
安装完依赖后执行下面命令
vim ./Modules/Setup
找到#zlib zlibmodule.c -I(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版本就可以了。将第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6.6
vim /usr/bin/yum
3.安装最新版本的pip
wget https://bootstrap.pypa.io/get-pip.py python get-pip.py
找到pip2.7的路径
find / -name "pip*"
上面的命令输出
/root/.cache/pip 这里省略一堆输出 /usr/local/python2.7.12/bin/pip /usr/local/python2.7.12/bin/pip2 /usr/local/python2.7.12/bin/pip2.7 #就是这个 /usr/bin/pip /usr/bin/pip2 /usr/bin/pip2.6
为其创建软链作为系统默认的启动版本(之前有旧版本的话就先删掉rm -rf /usr/bin/pip)
ln -s /usr/local/python2.7.12/bin/pip2.7 /usr/bin/pip
看下pip的版本
pip -V pip 8.1.2 from /usr/local/python2.7.12/lib/python2.7/site-packages (python 2.7)
pip安装完毕,现在可以用它下载安装各种包了
一键就可以升级
wget http://7xpt4s.com1.z0.glb.clouddn.com/update-python2.7.12.sh && bash update-python2.7.12.sh

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java桥模式(Bridge模式)
为什么使用桥模式 通常,当一个抽象类或接口有多个具体实现(concrete subclass),这些concrete之间关系可能有以下两种: 这多个具体实现之间恰好是并列的,如前面举例,打桩,有两个concrete class:方形桩和圆形桩;这两个形状上的桩是并列的,没有概念上的重复,那么我们只要使用继承就可以了。 实际应用上,常常有可能在这多个concrete class之间有概念上重叠。那么需要我们把抽象共同部分和行为共同部分各自独立开来,原来是准备放在一个接口里,现在需要设计两个接口,分别放置抽象和行为。 例如,一杯咖啡为例,有中杯和大杯之分,同时还有加奶 不加奶之分。如果用单纯的继承,这四个具体实现(中杯 大杯 加奶 不加奶)之间有概念重叠,因为有中杯加奶,也有中杯不加奶,如果再在中杯这一层再实现两个继承,很显然混乱,扩展性极差。那我们使用Bridge模式来实现它。 如何实现桥模式 以上面提到的咖啡 为例。我们原来打算只设计一个接口(抽象类),使用Bridge模式后,我们需要将抽象和行为分开,加奶和不加奶属于行为,我们将它们抽象成一个专门的行为接口。 先看看抽象部分的接口代码...
- 下一篇
Centos 7 x86 安装JDK
更新系统软件 yum update 查找系统已安装的jdk组件 rpm -qa | grep -E '^open[jre|jdk]|j[re|dk]' 查看java版本 java -version 卸载以前已有的jdk yum remove java-1.6.0-openjdk(版本) 查看软件列表 yum search java | grep -i --color JDK 选择相应的jdk yum install java-1.8.0-openjdk-devel.x86_64 查看版本 java -version
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能