安装编译工具
yum install automake libtool autoconf gcc-c++ gcc libaio libaio-devel makeyum install openssl-devel zlib-devel gcc gcc-c++ make autoconf readline-devel curl-devel expat-devel gettext-devel bzip2 - devel python-devel
先去python主站下载python的源码包:Python-2.7.6.tar.xz
wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
安装:
xz -d Python-2.7.6.tar.xz
tar xvf Python-2.7.6.tar
cd Python-2.7.6
./configure
make
make install
注意:
安装python之前,最好确认一下gcc是否安装。yum install -y gcc
如果提示make:command not found则用yum -y install gcc automake autoconf libtool make先安装编译器
否则./configure 阶段就会报错了
看版本号:
运行python,发现版本还是默认的,系统自带的2.6版本
更改系统默认的python:
建立软连接,使系统默认的python指向python2.7
正常情况下即使python2.7安装成功后,系统默认指向的python仍然是2.6版本,而yum是基于python2.6才能正常工作。所以要将系统默认的python指向到2.7版本。
# /usr/local/bin/python2.7 -V
# mv /usr/bin/python /usr/bin/python.bak
# ln -s /usr/local/bin/python2.7 /usr/bin/python
运行一下python,或者:
# python -V
修正yum报错:
如果打yum命令,你会发现报错了。提示你可能是python版本不对。所以我们要把yum依旧指向老的python2.6版本:
vi /usr/bin/yum
在打开的文件里的头一行,也就是指定python环境的那行代码,修改成:
#!/usr/bin/python2.6
python第三方包的安装位置:
/usr/local/lib/python2.7/site-packages/
如果安装setuptools过程中遇到:RuntimeError: Compression requires the (missing) zlib module
则需要安装zlib ,yum install zlib zlib-devel然后在python安装目录make install 重新安装完Python
继续setuptools安装就可以了。
- Failed to build these modules:
- _hashlib _ssl
升级Python2.7导致使用pip等命令安装模块失败
报错如下:
其实发生这个问题是因为:虽然你已经把Python升级到了2.7版本,但是pip仍然是原来的,版本,仍然在原来python的site-package里面
CentOS5环境下,默认是python2.4,site-package在
很多模块都被安装在这里。直接打pip,还是使用的原来的pip。所以我们的思路就是:应该在新的Python中安装pip,这样才不会报错。
这个问题遇到的人很多,但是解决的太少了,网上都是抄来抄去,都解决不了问题。最后还是在一外个国人的网站上找到了解决方案:
使用新版本的python来运行这个脚本,这个会自动安装出来一个easy_install,然后使用这个新的easy_install来安装pip就可以了!
安装生成的所有二进制文件,都是在你的PYTHON_HOME/bin/,因为我的是安装在/usr/local/python/,所以命令都在这里,以后再调用pip要使用绝对路径,或者做链接!
2.7的模块是在以下目录