付出,终有回报!
分类: Python/Ruby
2018-03-12 20:29:22
很多时候遇到问题,都是百度一下,按部就班基本就能解决。但对于有些问题,在网上搜到的方法不全面,或是存在小问题等,导致折腾很久才能解决。
在此,就记录一下Python更新过程中遇到的坑吧。
一、Python版本升级
CentOS 6.5自带的Python版本为2.6,首先需要升级到2.7版本。由于旧版本的Python已被深度依赖,所以不能卸载原有的Python,只能全新安装。
具体升级步骤如下:
1.下载Python-2.7.4.tgz
#wget
2. 解压安装,命令如下:
#tar -xvf Python-2.7.4.tgz
#cd Python-2.7.4
#./configure --prefix=/usr/local/python2.7
#make
#make install
3.创建链接来使系统默认Python变为Python2.7
#mv /usr/bin/python /usr/bin/python.old
#ln -s /usr/local/python2.7/bin/python2.7 /usr/bin/python
4. 查看Python版本
#python –V
5.修改yum配置(否则yum无法正常运行)
此处已经可以正常使用python2.7了
但是因为yum是使用的2.4的版本来用的,现在输入一下yum就会报错
# yum
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:
No module named yum
..............
所以还需要修改一下
# vim /usr/bin/yum
将第一行的#!/usr/bin/python修改为系统原有的python版本地址
#!/usr/bin/python2.6
至此CentOS6.5系统Python已成功升级至2.7.4版本
二、安装setuptools、pip
python的包管理器,相当于readhat的yum,官方的说法是pip改善了easy_install的一些缺点,可能理解pip是easy_intall替代工具。
安装pip前要先安装setuptools,setuptools 是一组由PEAK(Python Enterprise Application Kit)开发的Python的distutils工具的增强工具,可以让程序员更方便的创建和发布 Python的egg 包,特别是那些对其它包具有依赖性的状况。
1、在官网下载Setuptools的源码安装包
2、解压、编译setuptools包
# tar zxvf setuptools-19.6.tar.gz
#cd setuptools-19.6
#python setup.py build
在这里失败,提示说需要zlib-devel依赖,RuntimeError: Compression requires the (missing) zlib module
# yum install zlib zlib-devel
但是现在不能直接执行上一条编译命令,因为这个zlib其实是针对python的,所以我们需要对python再进行一次编译和安装命令。
进入Python2.7(源码安装的文件夹)目录,重新执行make&make install即可。
然后再进入 setuptool目录
#python setup.py build
#python setup.py install
那么到现在python setuptools搞定了,接下来就是pip了,步骤差不多哦。
1、在官网下载pip的源码安装包
2、解压压缩包、编译、安装
#tar zxvf pip-8.0.2.tar.gz
# cd pip-8.0.2
#python setup.py build
#python setup.py install
没有提示错误,那么就安装成功了。
安装好了之后会在我们的python目录中成成该执行文件的。
Installing pip3.5 script to /usr/local/python2.7/bin
Installing pip3 script to /usr/local/python2.7/bin
Installing pip script to /usr/local/python2.7/bin
这个就是安装是的提示,给我们说的很清楚,说将pip3安装到了/usr/local/python/bin目录中
ps:由于安装的时候还干着其他的事,脑子也晕乎乎的,刚开始没有注意安装成功后的提示信息,即安装的路径,导致我无法执行pip,还误以为pip的版本不正确而不能够使用,(当时脑子真是抽风了,都没有用相关的命令查看下安装路径,哭晕。。)然后又各种百度,更换版本,浪费了一堆的时间。
3、创建链接
#ln -s /usr/local/python2.7/bin/pip3.5 /usr/bin/pip