centos 7下獨立的python 2.7環境安裝


    之前寫過python 3.x的獨立安裝,相對來說比較簡單直接安裝即可,因為對於系統默認的python版本是2.x,那么安裝3.x的時候只需要編譯到新的目錄即可,所有的模塊都不會和之前的2有聯系,但是如果再安裝2.7就不一樣了,因為系統已經存在一個2.7的環境,所以新編譯的python有可能還使用之前的庫,就比如目前系統自帶的版本為2.7.5,我們現在安裝2.7.15,默認情況下進入新安裝的交互式界面,發現版本仍然是2.7.5,還是原來的,原因就是lib重用了,這種情況只需要在編譯的時候指定一下參數就可以解決了,下面詳細說一下安裝過程.

    另外注明一下,一般是不推薦安裝python 2.x的,我們這里安裝時為了在某些特殊情況下需要使用過時的接口而專門安裝的,比如我這里會報錯undefined symbol: PyUnicodeUCS2_Format,也就是不支持過時的ucs2編碼,所以為了不影響現有的系統,才選擇重新編譯2.7來兼容這個問題;如果項目不存在這些兼容問題,那么推薦使用python 3.

   首先安裝的包是:Python-2.7.15.tar.xz,即將安裝到的目錄為:/monchickey/python27

   首先解壓包:

tar -xJvf Python-2.7.15.tar.xz
cd Python-2.7.15/

    然后建立一下lib目錄,否則待會configure會出錯,這個是和之前不一樣的地方

mkdir -p /monchickey/python27/lib

    安裝之前可以確認一下相關的包是否安裝,一般情況下都是安裝的了,使用yum安裝如下:

yum -y install openssl openssl-devel
yum -y install ncurses-devel
yum -y install bzip2-devel
yum -y install sqlite-devel
yum -y install python-devel
yum -y install zlib zlib-devel

    然后開始編譯和安裝:

./configure --prefix=/monchickey/python27 --enable-shared --enable-unicode=ucs2 LDFLAGS="-Wl,-rpath /monchickey/python27/lib"
make -j4
make install

    在執行configure的時候,--enable-shared參數一定要指定,LDFLAGS這個參數很關鍵就是指定編譯的lib目錄使用我們自定義的目錄,如果不加就使用系統的了,最后--enable-unicode是根據需要指定ucs2還是ucs4的編碼對齊方式,在系統自帶的python2.7或者python3中都是使用的ucs4編碼方式,這里就是為了解決上面所說的那個錯誤而指定的,這個參數或者其他參數根據你實際的項目需要指定,不需要的話直接去掉即可,但是另外兩個參數一定要加.

   現在python 2.7.15獨立環境就安裝完畢了,直接調用新的安裝目錄下的python使用即可.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM