相关软件准备

https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz

https://pypi.org/project/setuptools/

https://pypi.org/project/pip/pip-10.0.1.tar.gz

旧版本setuptools下载,建议下载最新的

http://distfiles.macports.org/py-setuptools/

将以上三个包wget到linux系统里,一般放到 /usr/local/src里

在centos6.6默认python版本为2.6,很多东西兼容不好,需要升级为2.7;

1,更新gcc:

yum -y install gcc gcc-c++ automake autoconf 

提示 :

Loaded plugins: fastestmirror, refresh-packagekit, security
Existing lock /var/run/yum.pid: another copy is running as pid 7172.
Another app is currently holding the yum lock; waiting for it to exit...
果断删除yum.pid(以root用户):rm /var/run/yum.pid

2,为了安装setuptools,要需要安装zlib:

yum install zlib zlib-devel

2.1,为在python编译时加入ssl模块,yum安装openssl和openssl-devel:

yum install openssl

yum install openssl-devel

2.2,为了防止出现 import zlib找不到的情况,复制文件:

cp /usr/lib64/python2.6/lib-dynload/zlibmodule.so /usr/local/lib/python2.7/lib-dynload

3. 下载并解压python, 编辑Modules安装文件

wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz  -O /usr/local/src/Python-2.7.15.tgz
tar xf !$
cd !$
vim Modules/Setup.dist

修改内容如下

# Socket module helper for socket()
_socket socketmodule.c timemodule.c # Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

4,进入python,编译安装:

./configure --prefix=/usr/local
make all
make install
make clean
make distclean

5,把系统自带的2.6移除(依然会保留2.6版本:/usr/bin/python2.6)

rm -f /usr/bin/python  

6,把python执行软连接连接到2.7

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

7,编辑yum命令,把路径指明为2.6,因为yum必须基于2.6版本

vi /usr/bin/yum 

把文件头部的

#!/usr/bin/python

改成

#!/usr/bin/python2. 

yum只支持2.6,如果不该yum用不了

==================以下为pip的安装部分=================

8,安装setuptools,下载setuptools-18.0.1.tar.gz,解压后,进入setuptools-18.0.1,执行:

python setup.py install

9,安装pip,下载pip-7.1.0.tar.gz,解压后进入pip-7.1.0,执行:

python setup.py install

10,测试pip,如果报错“pkg_resources.DistributionNotFound: The 'pip==7.1.2' distribution was not found and is required by the application”,此时需要修改pip可执行程序:

mv /usr/bin/pip /usr/bin/pip0
cp /usr/bin/pip2.7 /usr/bin/pip

附:MySQLdb模块的安装方法:

简略方法:

pip install MySQL-python

安装后测试:

[root@iZ251ed9ao2Z ~]# python
Python 2.7.11 (default, Oct 18 2016, 09:34:16)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>

如果正常,则ok,否则按照以下步骤安装:

1,到官网下载源代码:MySQL-python-1.2.3.tar.gz

2,编译安装:cd MySQL-python-1.2.3 && python setup.py install

3,若出现错误:_mysql.c:2444: error: ‘_mysql_ConnectionObject’ has no member named ‘open’ ,则安装以下包:

yum -y install mysql-devel libxml2 libxml2-dev libxslt* zlib gcc openssl

4,重新编译安装即可。

如果pip install 报错为证书相关的问题,可以参靠下面的链接重新编译

http://www.cnblogs.com/yuechaotian/archive/2013/06/03/3115472.html

centos6 安装python2.7 并做软件兼容处理 及 MySQLdb模块安装的更多相关文章

  1. Mac MySQLdb模块安装,可算解决了

    转载:http://blog.csdn.net/janronehoo/article/details/25207825 短评:这篇文章感觉是比较全面解决Mac MySQLdb模块安装问题的文章了,特别 ...

  2. 同时安装Python2和Python3,如何兼容并切换使用详解

    由于历史原因,Python有两个大的版本分支,Python2和Python3,又由于一些库只支持某个版本分支,所以需要在电脑上同时安装Python2和Python3,因此如何让两个版本的Python兼 ...

  3. Linux 首先基本包安装(vim啊什么的),源,源优化,项目架构介绍, (LNMuWsgi)Django项目相关软件mysql,redies,python(相关模块)安装配置测试

    内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 ...

  4. python之mysqldb模块安装

    之所以会写下这篇日志,是因为安装的过程有点虐心.目前这篇文章是针对windows操作系统上的mysqldb的安装.安装python的mysqldb模块,首先当然是找一些官方的网站去下载:https:/ ...

  5. Python的MySQLdb模块安装,连接,操作,增删改

    1. 首先确认python的版本为2.3.4以上,如果不是需要升级python的版本     python -V   检查python版本 2. 安装mysql, 比如安装在/usr/local/my ...

  6. Python的MySQLdb模块安装

    MySQL-python-1.2.1.tar.gz  下载地址:https://pan.baidu.com/s/1kVfH84v 然后解压,打开README(这个其实没有什么鸟用) 里面有安装过程: ...

  7. nginx的yum安装,基本参数使用,编译参数说明和Nginx基本配置,模块安装

    nginx的yum安装从nginx官网获取源 vim /etc/yum.repose.d/nginx.repo[nginx]name=nginx repobaseurl=http://nginx.or ...

  8. MySQLdb模块安装-win环境

    原帖地址:http://blog.csdn.net/wklken/article/details/7253245 使用python访问mysql,需要一系列安装 linux下MySQLdb安装见  P ...

  9. CentOS6下编译安装Python2.7.6方法

    关于在CentOS6下编译安装Python2.7.6的方法非常的多了,小编以前也介绍过相关的文章了,下面一聚教程小编再来为各位介绍一下吧,希望文章能帮助到各位.   CentOS下面Python在升级 ...

随机推荐

  1. django 查询如何使用 or

    参考:http://stackoverflow.com/questions/6567831/how-to-perform-or-condition-in-django-queryset django自 ...

  2. 抓包神器 tcpdump 使用介绍

    tcpdump 命令使用简介 简单介绍 tcpdump 是一款强大的网络抓包工具,运行在 linux 平台上.熟悉 tcpdump 的使用能够帮助你分析.调试网络数据. 要想使用很好地掌握 tcpdu ...

  3. PHP操作二进制字节数据

    在PHP开发中大都是操作字符类数据,极为方便,但操作二进制又如何呢,下面代码举例看看. 函数:  pack(format,args+) pack()和unpack()函数的第一个参数表如下 Bash ...

  4. MVC5 IIS7 403错误

    问题背景 MVC5部署到IIS7中显示403错误. 解决方案 <system.webServer> → <modules> 节点下的 ApplicationInsightsWe ...

  5. vue-resource和vue-async-data两个插件的使用

    vue-resource和vue-async-data两个插件的使用,看了一下文档http://cn.vuejs.org/guide/plugins.html#u5DF2_u6709_u63D2_u4 ...

  6. ASP.NET MVC 右键点击添加没有区域(Area)、控制器、试图等选项

    在MVC项目中准备添加控制器.区域时发现没有控制器这个选项,当时没有在意以为VS出问题了,网上所搜了一下,有人说没有安装:Microsoft.AspNet.Mvc或者需要升级. 本次的解决如下: 1) ...

  7. MobaXterm v10.9破解

    去官网下载个人版 Exeinfo查壳发现无壳 载入OD,右键,字符串智能搜索. Ctrl+F搜索关键词About,找到到FormAbout处,即关于窗体的创建和显示的位置.双击查看汇编代码 程序在窗体 ...

  8. 集合的最大缺点是无法进行类型判定(这个缺点在JAVA1.5中已经解决),这样就可能出现因为类型不同而出现类型错误。

    集合的最大缺点是无法进行类型判定(这个缺点在JAVA1.5中已经解决),这样就可能出现因为类型不同而出现类型错误. 解决的方法是添加类型的判断.      LinkedList接口(在代码的使用过程中 ...

  9. GDC2017【神秘海域 4】中所使用的顶点着色器技术

    原文链接 http://game.watch.impress.co.jp/docs/news/1047802.html   会場:San Francisco Moscone Convention Ce ...

  10. swoole推送信息一对一,一对多

    服务端 $ws->on('message', function ($ws, $frame) { //echo "接收到的信息: {$frame->data}\n"; / ...