前言:一些第三方框架为了降低复杂性,新的版本已经开始不支持旧版本的python,比如Django这个web框架1.8版本及以上仅仅只支持python2.7及以上版本(记忆中是这个1.8版本),pip安装也会弹出响应警告。安装过程中遇到各种各样的问题,在众里寻他千百度情况下,通过一大堆错误的搜索,终于把python版本给升级了。但这个版本升级不是完全的替换,只是让我们新版本的python可以用pip正常安装我们需要的第三方模块。CentOS7默认的python版本是2.7.5所以,就以这个版本为例,如果想要将python升级到python3.x应该也是相同原理。

一、使用yum安装wget工具(存在则跳过)

yum install wget

二、下载时候可以自己到官网找自己想要的2.7以上版本官网地址:www.python.org/ftp/python

将下载文件统一下载到home目录下

cd /home

wget https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz

tar -zxvf Python-2.7.5.tgz     (z是压缩格式,x为解压,v为显示过程,f指定备份文件)

cd Python-2.7.5

【检测是否有编译环境如gcc,配置安装路径,装在Python27目录下】

./configure --prefix=/usr/local/Python27

若报错没有编译环境,则安装编译集成包:

yum groupinstall "Development tools"

【重新检查,和设置安装路径】

./configure --prefix=/usr/local/Python27

【编译源文件】

make

【安装编译后的文件】

make install

【安装完成,python就会被安装到/usr/local/Python27目录下面的,然后我们替换系统自带的python2.6】

先备份原版python

mv /usr/bin/python /usr/bin/python.bak

建立python2.7.5指向系统/usr/bin/的软连接(相当于windows的快捷方式)让系统使用新版的Python

ln -s /usr/local/Python27/bin/python2.7 /usr/bin/python

输入python就会在命令行显示我们新版的python2.7.5

【但安装完后我们python2.7.5的模块还是空的,连setuptools工具都没有,pip也没有,我们yum安装功能也用不了】

1、先解决yum问题,输入下面命令查看旧版python的全名应该会有一个python2.6

ls /usr/bin |grep python

编辑yum的脚本文件

vi /usr/bin/yum

把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.6

(就是把旧版本python作为yum的执行环境,保存退出后yum安装即可正常运行)

2、setuptools模块安装到新版python2.7目录lib/site-packages/下

下载setuptools官网地址:https://pypi.python.org/pypi/setuptools

好像只有setuptools-38.6.0-py2.py3-none-any.whl (md5)和setuptools-38.6.0.zip (md5)两种包,官方推荐使用.whl包,但还不知道怎么安装,直接下载zip包(2018年3月16号下载)

cd /home

wget https://pypi.python.org/packages/95/b9/7c61dcfa6953271f567a8db96f110cd8cf75e13a84c1d293649d584d2d39/setuptools-38.6.0.zip

解压zip包

unzip setuptools-38.6.0.zip

进入解压目录

cd setuptools-38.6.0

使用新版本的python安装

python setup.py install

【在这里会报错,Compression requires the (missing) zlib module,缺少zlib模块】

先安装缺少的模块

yum install zlib

yum install zlib-devel

【将python2.7.5重新进行编译安装】

cd /home/Python-2.7.5

编译。如果有报错,先跳过,直接下一步

make

安装

make install

进入setuptools-38.6.0目录

cd /home/setuptools-38.6.0

再次安装,应该不会再报错了

python setup.py install

【pip模块的安装】

同上,官网地址https://pypi.python.org/pypi/pip   下载压缩包

wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz

tar -zxvf pip-9.0.1.tar.gz

cd pip-9.0.1

由于pip安装包依赖于setuptools模块,所以可以直接安装

python setup.py install

到这里,就完成的版本的基本升级,后面就可以通过pip进行软件安装。

查看pip版本

pip --version

转:https://www.cnblogs.com/gne-hwz/p/8586430.html

-----------------------------------------------------------

pip版本的升级,由于替换的新版本python,安装pip可能不是最新版,先进行pip的升级。此命令慎用!升级后经常会导致pip不可用,又得卸载重装。

pip install --upgrade pip

-----------------------------------------------------------

卸载pip

python -m pip uninstall pip

sudo apt-get remove python-pip python-pip 【非必要】

CentOS 6.X Python 2.6升级到Python 2.7 【转】的更多相关文章

  1. CentOS 7.0 下 Python 2.7 升级到 Python 3.5

    前段因为时间工作需要,要把 Centos 7.0 默认安装的 Python 2.7 升级到 Python 3.5. 具体操作如下: # 安装 gcc gcc-c++ 等编译工具软件 yum insta ...

  2. Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)

    Centos 7 默认安装的Python 的版本是2.7的,现在不少人用的是3.x上的版本,故而需要了解下如何从Python2.7升级到Python 3.6. 在虚拟机安装时,网络不通会先遇到一个错误 ...

  3. Centos 6.4 python 2.6 升级到 2.7

    Centos 6.4 python 2.6 升级到 2.7 分类: Python Linux2013-09-13 21:35 37278人阅读 评论(2) 收藏 举报 一开始有这个需求,是因为用 Ya ...

  4. CENTOS 7 升级安装 Python 3.5

    写在前面的话 本文采取源码的方式安装 Python 3.5.2,如果是其它版本会有或多或少的差异,且写这篇的时候官网最新的是 Python 3.7,个人使用 3.5 就足够了,没必要更新到最新,否则出 ...

  5. CentOS 6.9编译安装Python-2.7.14(python升级)

    参考 Python官网:https://www.python.org/ 阿里云 https://www.aliyun.com/jiaocheng/517192.html 一.查看CentOS版本和系统 ...

  6. Centos python 2.6 升级到 2.7

    前几天做了下阿里云的RDS日志相关功能,其工具大都是Python语言编写,但服务器初始化时的Python版本又不满足需求,本身也没有学过Python,因此在问题定位上费了一番周折,最后找朋友帮忙看了下 ...

  7. CentOS 6.4 下 Python 2.6 升级到 2.7

    一开始有这个需求,是因为用 YaH3C 替代 iNode 进行校园网认证时,CentOS 6.4下一直编译错误,提示找不到 Python 的某个模块,百度了一下,此模块是在 Python2.7 以上才 ...

  8. Centos 6.4 python 2.6 升级到 3.5.2

    查看python的版本 #python -V Python 1.下载Python-2.5.2 #wget https://www.python.org/ftp/python/3.5.2/Python- ...

  9. Centos 6.4 python 2.6 升级到 2.7一起的MySQLdb不能使用的解决问题

    查看python的版本#python -V Python 2.6.6 1.下载Python-2.7.3#wget http://python.org/ftp/python/2.7.3/Python-2 ...

随机推荐

  1. mysql时间函数操作

    Mysql时间转换函数 https://blog.csdn.net/w_qqqqq/article/details/88863269 mysql时间日期函数 https://www.cnblogs.c ...

  2. 报表解决方案Telerik Reporting发布R2 2019 SP1|支持MS Access

    Telerik Reporting拥有直观.无代码的Win.网页与PDF报表的创建功能,直观的设计与具有特定风格的报表,无代码数据打包.向导.语法开发工具.自动操作.分类整理.过滤.有条件格式化.转化 ...

  3. thinkphp类型转换

    类型转换 说白了就是在model类中声明的字段输出类型:其语法如下: 注意strtotime()函数可以将诸如‘2018-12-21’这样的日期字符串转为整数存入数据库 自动完成---等于提前对某一表 ...

  4. 【LuoguP5289】[十二省联考2019] 皮配

    题目链接 题目描述 略 Sol 一道背包问题 首先暴力做法设 \(dp[i][j][k]\) 表示前 \(i\) 个城市的学校被分到第一阵营 \(j\) 人 第一门派 \(k\) 人的方案数. 中间一 ...

  5. 对云信SDK的研究

    1.我首先看了网易的云的各个产品 2.进行了分析发现产品还是很多的 3.主要对web的SDK进行了查看 4.主要有即时通信和聊天室 5.在githup上有网易托管的代码,我用git拉下来,并进行了查看 ...

  6. Q15格式表示负小数

    1.用Q15.16-bit格式,表示出-0.5? 解析:其实很简单,Q15是dsp里为了优化浮点的,就是将小数* 2^15. 例如:0.333 * 32768 = 10911.744  取整数就是10 ...

  7. CDOJ 1063 堆排序模板

    D - 秋实大哥与妹纸 Time Limit:1000MS     Memory Limit:1500KB     64bit IO Format:%lld & %llu Submit Sta ...

  8. 页面禁止刷新处理Js实现

    document.onkeydown = function(e) { e = window.event || e; var k = e.keyCode; //屏蔽ctrl+R,F5键,ctrl+F5键 ...

  9. BZOJ 3168 Luogu P4100 [HEOI2013]钙铁锌硒维生素 (矩阵求逆、二分图匹配)

    线性代数+图论好题. 题目链接: (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=3168 (luogu) https://www.lu ...

  10. 响应式布局@media screen and ( max-width: 像素值 ) {}

    设计思路很简单,首先先定义在标准浏览器下的固定宽度(假如标准浏览器的分辨率为1024px,那么我们设置宽为980px),然后用Media Query来监测浏览器的尺寸变化,当浏览器的分辨率小于1024 ...