linux老系統安裝python2.7
一、python2.6升級至Python2.7
1.檢視當前python版本
$ python -V
$ python 2.6.6
2.下載Python-2.7.12
$ wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
- 1
3.解壓縮並更改工作目錄
$ tar zxvf Python-2.7.12.tgz
$ cd Python-2.7.12
4.安裝
$ ./configure $ sudo make all $ sudo make install $ sudo make clean $ sudo make disclean
5.檢視版本資訊
$ /usr/local/bin/python2.7 -V
- 1
6.簡歷軟連線,使系統預設的python指向python2.7
$ sudo mv /usr/bin/python /usr/bin/python2.6.6 #備份
$ sudo ln -s /usr/local/bin/python2.7 /usr/bin/python # 建立軟連線
- 1
7.重新檢驗Python版本
$ python -V
$ sudo python -V
- 1
需要注意的是,可能會出現普通使用者的python和sudo的python版本不同的情況,此時要檢查一下軟連線的建立是否正確,不然,在接下來使用sudo python setup.py install 安裝package的時候會安裝到Python2.6裡。
我就是遇到了這個問題,網上建議的解決方法是使用sudo -i python setup.py install使其定址到python2.7,或者直接指定python2.7的位置。在我嘗試了sudo -i python -V這個命令,發現結果依然是python 2.6.6之後,便放棄了sudo -i的方法,然後重新做了一次軟連線,雖然好像我兩次做的完全一樣,但不知道為什麼,成功使得sudo python -V的結果也是python 2.7.12了。
8.指定yum的Python版本
由於系統python軟連線指向python2.7之後,yum將無法正常工作,出現“No module named yum”的報錯。
解決方式如下:
$ sudo vim /usr/bin/yum
- 1
將檔案頭部的
#!/usr/bin/python
- 1
改為
#!/usr/bin/python2.6.6
- 1
- 2
二、安裝setuptools和pip
wget https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate
python setup.py install
“ImportError: No module named setuptools”提示我們沒有由於沒有安裝setuptools,使得pip安裝失敗,看來只有先安裝setuptools:
wget https://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg --no-check-certificate
sh setuptools-0.6c11-py2.7.egg
yum -y install zlib*
Modules/Setup.dist 去註釋
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
python資料夾 make && make install
sh setuptools-0.6c11-py2.7.egg 將會成功
去pip解壓的資料夾裡面 python setup.py install。
發現報錯找不到 pip 7.0.7或者其他版本
wget http://pypi.python.org/packages/source/d/distribute/
下載檔案解壓,python setup.py 安裝
然後easy_install pip==7.1.0
然後執行pip 返現httphandelr找不到
yum install openssl-devel -y
最終pip可以使用了
-----------
這個時候別太囂張,突然發現pip升級之後用不了,/usr/local/bin/pip 裡面可以修改所需的pip版本,但是沒用。
這個時候yum remove python-pip之後再easy_install pip==18.0
然後/usr/bin生成超連結就可以了。