前言:一些第三方框架为了降低复杂性,新的版本已经开始不支持旧版本的python,比如Django这个web框架1.8版本及以上仅仅只支持python2.7及以上版本(记忆中是这个1.8版本)

  pip安装也会弹出响应警告。安装过程中遇到各种各样的问题,在众里寻他千百度情况下,通过一大堆错误的搜索,终于把python版本给升级了。

  但这个版本升级不是完全的替换,只是让我们新版本的python可以用pip正常安装我们需要的第三方模块。

  CentOS7默认的python版本是2.7.5所以,就以这个版本为例,如果想要将python升级到python3.x应该也是相同原理

CentOS6.5系统安装

先查看python版本
、命令行输入python(如果python版本是2.7以上则跳过下面步骤) 升级python2.--》python2.7以上版本 使用yum安装wget工具(存在则跳过)
yum install wget
将下载文件统一下载到home目录下
cd /home
下载和编译python2.7.5
下载时候可以自己到官网找自己想要的2.7以上版本官网地址:www.python.org/ftp/python
wget https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz
解压缩文件
tar -zxvf Python-2.7..tgz (z是压缩格式,x为解压,v为显示过程,f指定备份文件)
进入解压后的文件
cd Python-2.7.
检测是否有编译环境如gcc,配置安装路径,装在Python27目录下
./configure --prefix=/usr/local/Python27
在这里可能会报错没有编译环境
安装编译集成包
yum groupinstall "Development tools"
重新检查,和设置安装路径
./configure --prefix=/usr/local/Python27
make编译源文件
make 安装编译后的文件
make install
安装完成,python就会被安装到/usr/local/Python27目录下面的,然后我们替换系统自带的python2.
先备份原版python
mv /usr/bin/python /usr/bin/python.bak
建立python2..5指向系统/usr/bin/的软连接(也就想当与windows的快捷方式)让系统使用新版的python
ln -s /usr/local/Python27/bin/python2. /usr/bin/python
到这里我们输入python就会在命令行显示我们新版的python2.7.5 但安装完后我们python2..5的模块还是空了,连setuptools工具都没有,pip也没有,我们yum安装功能也用不了
先解决yum问题,输入下面命令查看旧版python的全名应该会有一个python2.
ls /usr/bin |grep python
编辑yum的脚本文件
vi /usr/bin/yum
把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.6就是把旧版本python作为yum的执行环境,保存退出后yum安装即可正常运行。
setuptools模块安装到新版python2.7目录lib/site-packages/下
下载setuptools官网地址:https://pypi.python.org/pypi/setuptools
好像只有setuptools-38.6.-py2.py3-none-any.whl (md5)和setuptools-38.6..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..zip
进入解压目录
cd setuptools-38.6.
使用新版本的python安装
python setup.py install
在这里会报错,Compression requires the (missing) zlib module。缺少zlib模块
先安装缺少的模块
yum install zlib
yum install zlib-devel
将python2..5重新进行编译安装
cd /home/Python-2.7.
编译,如果有报错,先跳过,直接下一步
make
安装
make install
进入到setuptools-38.6.0目录
cd /home/setuptools-38.6.
再次安装,应该不会再报错了
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..tar.gz
cd pip-9.0.
由于pip安装包依赖于setuptools模块,所以可以直接安装
python setup.py install 到这里,就完成的版本的基本升级。
后面就可以通过pip进行软件安装
、pip版本的升级,由于替换的新版本python,安装pip可能不是最新版,先进行pip的升级
pip install --upgrade pip

接下来可以测试下pip是否更新成功

查看pip版本

pip --version

CentOS6的python2.6升级到python2.7以上版本(可能更详细)的更多相关文章

  1. Centos6.7 python2.6升级到python2.7

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

  2. centos自带python2.6升级到python2.7。并解决yum pip easy_install pip等模块兼容性问题

    参考原文:  https://www.cnblogs.com/kimyeee/p/7250560.html   https://www.cnblogs.com/galaxy-gao/p/5796488 ...

  3. 把python2.6升级到python2.7(同样适用于把python2升级到python3)

    在启用https过程中,在生成CSR(证书请求文件)时,报错了,说python2.6已被python团队抛弃了,所以升级python到2.7 话不多说,直接上代码: 步骤1:下载python2.7.1 ...

  4. centos python2.6 升级到 python2.7

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

  5. Linux下安装pip(遇到了python2.6升级为python2.7道路上的坑,原因已经找到,只差临门一脚了,以后补上)

    1.先说一下什么是pippip 是“A tool for installing and managing Python packages.”,也就是说pip是python的软件安装工具2.下面介绍怎么 ...

  6. CentOS6.5自带Python2.6.6升级至Python2.7

    CentOS6.5中Python2.6升级到Python2.7 由于Python开发团队已不再支持2.6版本,且该版本对一些软件不支持,因此将2.6升级到2.7. 1.安装Python2.7: 下载源 ...

  7. centos6 自带python2.6升级python2.7+

    centos6系统自带Python为2.6.6版本,升级搞版本操作如下(python2-python3都一样) 1.下载需要升级的python包 官方下载地址:https://www.python.o ...

  8. 技巧方法 - CentOS6将Python2.6.6升级到Python2.7.6

    1.首先使用“python -V”命令查看python版本,我们测试主机显示的是2.6.6版,于是下面就着手将python2.6.6升级到Python2.7.6.python -V #查看python ...

  9. Python 2.6.6升级到Python2.7.15

    最近在使用Python处理MySQL数据库相关问题时,需要用到Python2.7.5及以上版本,而centos6.5等版本操作系统默认自带的版本为2.6.6,因此需要对python进行升级. Pyth ...

随机推荐

  1. android注解处理技术APT

    APT(Annotation Processing Tool)是java的注解处理技术,它对源代码文件进行检测找出其中的Annotation,根据注解和注解处理器和相应的apt自动生成代码. Anno ...

  2. sublime text 插件 -- 获取文件名到剪贴板

    日常开发使用 sublime text 有好长一段时间了,有时候想拷贝当前正在编辑的文件名时发现没有很快捷的方法,一般都是先点击右键菜单栏中的 Reveal in Side Bar 对文件进行定位(在 ...

  3. C++虚函数表(vtbl)

    C++的虚函数的作用就是为了实现多态的机制,利用内存的指针偏移来实现将基类型的指针指向的内存空间用子类对象来初始化.这样经过内部虚表的运作,实现可以通过基类指针来调用子类所定义的方法. 这种技术,其实 ...

  4. 唯品会osp简介(转)

    转自 https://blog.csdn.net/panyongcsd/article/details/58617810 公司(VIP)从2015年开始在内部推动Venus框架的使用,这是一款基于Ap ...

  5. Entity Framework学习记录

    记录一次ef code first的学习记录 最近想做一套自己的框架,正在寻找合适的ORM,之前参照力软(很早之前的版本了)的底层代码,做了一套自己的增删改查, 但是使用起来总觉得缺了点什么? 所以决 ...

  6. winform NPOI excel 导出并选择保存文件路径

    public void ExcelOp(DataGridView gdv,ArrayList selHead) { if (selHead.Count==0) { MessageBox.Show(&q ...

  7. 深入浅出“跨视图粒度计算”--3、EXCLUDE表达式

    本文由  网易云发布. 深入嵌入“跨视图粒度计算”的前面两篇分别讲了 1.理解数据的粒度 2.INCLUDE表达式 这一篇讲一下EXCLUDE表达式的用法. EXCLUDE,中文译为“排除”,顾名思义 ...

  8. js中的基本类型与引用类型学习

    一.基本数据类型 ECMAScript 有 5 种原始类型(primitive type),即 Undefined.Null.Boolean.Number 和 String,也称为基本数据类型,ES6 ...

  9. go get golang.org/x/net 安装失败的解决方法!

    GO语言在github.com上建立了自己的项目,对应的包如果不能下载,那么可以到这里去下载,比如:"go get golang.org/x/net"不能下载这个包,那么我们可以访 ...

  10. jzoj5843

    给定 n 个正整数序列 ,每个序列长度为m. 选择至少 1 个序列,在每个被选择的序列中选择一个元素,求出所有被选择的元素的 gcd. 求所有方案的结果之和,答案对 1e9+7 取模.两种方案不同,当 ...