centos7.1安裝 python2.7.10詳細教程

? ?為了測試 mesos,搞了一個 centos7.1,使用最小化安裝,然后自己安裝了 net-tools,“開發(fā)工具”集。后來想裝一下 dcos cli工具,結果發(fā)現(xiàn) python 的 pip 不可用。

? ?搜了一下,發(fā)現(xiàn) Centos7自動的 python 版本為2.7.5,不帶 openssl 加密,而要下載的東西都是 https 的,找了好久,希望能讓 pip 忽略 https 的驗證無果。查到一個信息,說是2.7.9以上版本自帶了 openssl 插件。好吧,試試這個吧!

1、安裝一堆需要的軟件包,之所以搞了兩天,完全是被這些坑的,一步一個坑啊!

yum?-y?install?openssl?openssl-devel?ncurses-devel.x86_64??bzip2-devel?sqlite-devel?python-devel?zlib

2、下載 python2.7.10源碼包,解壓到一個臨時目錄中,我就放在/tmp 下了

wget?https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz  tar?zxvf?Python-2.7.10.tgz

3、編譯

立即學習Python免費學習筆記(深入)”;

編譯前,注意一下,configure時候要使用”–enable-shared”,表示生成動態(tài)鏈接庫。(不然后面編譯mod_wsgi會出錯)僅使用這一項也不夠,開始僅使用–enable-shared選項,發(fā)現(xiàn)編譯完成后,進入Python2.7.10目錄,執(zhí)行python、python2、python2.7在終端都是返回python2.7.5的提示符。所以,在執(zhí)行configure命令的時候,還要加上”-rpath”選項,這個代表是否將生成的庫安裝在軟件的安裝目錄,默認是在安裝目錄,否則自己指定路徑。

先建立一個目錄,不然后面configure的時候會出錯:

mkdir?-p?/usr/local/python/2.7.10/lib  ./configure?--enable-shared?--prefix=/usr/local/python/2.7.10?LDFLAGS="-Wl,-rpath?/usr/local/python/2.7.10/lib"  make?&&?make?install?&&?make?clean

4、切換新版本

此處一定要把原來的 python2.7.5保留,我開始是直接覆蓋了老版本,結果發(fā)現(xiàn) yum 不能用了,費了無數(shù)勁,也沒搞定,只好重裝了系統(tǒng),反正是測試的虛擬機(不過第二天找到修復的辦法了)

mv?/usr/bin/python?/usr/bin/python2.7.5  ln?-fs?/usr/local/python/2.7.10/bin/python2.7?/usr/bin/python

5、解決 yum 的問題

因為yum需要使用Python2.7.5的版本,現(xiàn)在 yum 應該不能干活了,還有設置一下yum相關的文件,這樣執(zhí)行yum相關的命令時才不會出錯。vi /usr/bin/yum,修改第一句,替換成保留的2.7.5的版本:

!/usr/bin/python2.7.5

看了很多人說改完上面的就萬事大吉了,我修改了上面的之后,yum還是出問題,然后又根據(jù)出問題的部分修改了”/usr/libexec/urlgrabber-ext-down”下的第一句:

!/usr/bin/python2.7.5

果然熟悉的 yum 界面出來了!

5、安裝 setuptools、pip

老版本的這些,都不能生效了,得重新裝過,我在這遇到很多坑,菊花殘,滿身傷啊!

下載ez_setup.py文件,安裝setuptools:

wget?https://bootstrap.pypa.io/ez_setup.py

運行以下命令安裝,因為之前沒裝 zlib-devel 模塊,下面的命令執(zhí)行不成功,沒辦法,yum install zlib-devel ,然后理新編譯 python。

python ez_setup.py?

下載pip源碼,進入源碼目錄進行安裝,這一步也因為第一步驟的相關組件沒裝,坑了半天

wget?https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz#md5=3823d2343d9f3aaab21cf9c917710196  tar?zxvf?Python-2.7.10.tgz  cd?Python-2.7.10  python?setup.py?install

增加一個軟鏈接,這一步好象不是很必要:

ln?-fs?/usr/local/python/2.7.10/bin/pip?/usr/bin/pip

本以為這樣就萬事大吉了,結果運行 pip,直接報錯,又是因為依賴的組件沒裝。

最后再說一下,最好把新的 python 的路徑加到 PATH 環(huán)境變量中,否則還會有其他組件運行不正常。

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享