CentOS 6.X系統下升級Python2.6到Python2.7 的方法_python

來源:互聯網
上載者:User

第一步:升級python

CentOs 6.x的系統預設安裝的Python版本是2.6.x,想升級到Python2.7.x,從官方下載源檔案,然後解壓、編譯

wget http://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xzunxz Python-2.7.10.tar.xztar -vxf Python-2.7.10.tar

執行完以上命令會解壓得到Python-2.7.10這個檔案夾,進入該目錄並執行以下命令進行配置

./configure --enable-shared --enable-loadable-sqlite-extensions --with-zlib

其中--enable-loadable-sqlite-extensions是sqlite的擴充,如果需要使用的話則帶上這個選項。

編譯之前需要修改Setup檔案,將我們編譯需要的zlib去掉注釋

vi ./Modules/Setup

找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注釋並儲存,然後進行編譯和安裝

make && make install

安裝好Python2.7之後我們需要先把Python2.6備份起來,然後再對yum的配置進行修改,如果不進行這一步操作的話,執行yum命令將會提示你Python的版本不對。執行以下命令,對Python2.6進行備份,然後為Python2.7建立軟連結:

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

然後編輯/usr/bin/yum,將第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6.6

現在執行yum命令已經不會出現之前的錯誤資訊了。我們執行python -V查看版本資訊,如果出現錯誤

error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

編輯設定檔

vi /etc/ld.so.conf

添加新的一行內容/usr/local/lib,儲存退出,然後

/sbin/ldconfig /sbin/ldconfig -v

第二步:安裝pip

下載最新版的pip,然後安裝

wget https://bootstrap.pypa.io/get-pip.pypython get-pip.py

尋找pip的位置

whereis pip

找到pip2.7的路徑,為其建立軟鏈作為系統預設的啟動版本

ln -s /usr/local/bin/pip2.7 /usr/bin/pip

pip安裝完畢,現在可以用它懶人安裝各種需要的包了 :)

第三步:安裝scrapy

直接 pip install scrapy 就ok了

總結

以上就是CentOS 6.X系統下升級Python2.6到Python2.7的全部步驟了,大家都學會了嗎?希望這篇文章對大家的學習或工作帶來一定的協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.