CentOS 6.預設安裝是只有python 2.6,有些python 套件需要使用至2.7版本以上,如 Django,需要注意的是CentOS 6. 比較關鍵的系統工具,如yum ,這是默認為python2.6.6的版本,所以新版python安裝的路徑會在 /usr/local/,基本上對於CentOS 6.來說都是可以安裝的。
安裝版本
System OS : CentOS 6.6
Software : Python2.7 ro Python 3.3 , pip
選擇安裝
Software : virtualenv
pip
這是一個很方便的python 套件安裝程序,使用pip可以很快速的安裝想要的python套件。
https://pip.pypa.io/en/latest/
virtualenv
這是一個可以生成獨立python環境的套件,可以利用virtualenv這個套件,測試想要的python環境,不會連動到system本身安裝的套件。
https://virtualenv.pypa.io/en/latest/
安裝程序開始之前,需要一些前置作業,因為要安裝新版本,需要額外安裝一些開發工具以及libs,雖然沒有嚴謹的要求,但沒有這些libs,python的編譯器,會出現異常。
yum groupinstall -y "Development Tools"
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
在編譯python 可以提供shared Library,來完成一些套件第三方工具。
vim /etc/ld.so.conf
在檔案內加入/usr/local/lib,並執行/sbin/ldconfig
/etc/ld.so.conf內容如下
include ld.so.conf.d/*.conf
/usr/local/lib
解決複雜的編譯問題
要安裝自定義的Python 版本,這部份會是一個關鍵,如果是使用 make install ,會因為Python 的filesystem 的命名出現不可預期的錯誤,所以是使用 make altinstall。
下載、編譯 跟 安裝 python
# python 2.7.9
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar xf Python-2.7.9.tgz
cd Python-2.7.9
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
#Python 3.3.6
wget https://www.python.org/ftp/python/3.3.6/Python-3.3.6.tgz
tar xf Python-3.3.6.tgz
cd Python-3.3.6
./configure --prefix=/usr/local --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
完成安裝以後就會在下列路徑看到相關版本。
/usr/local/bin/python2.7
/usr/local/bin/python3.3
安裝pip
這個pip套件會依照python 版本的不同而安裝對應的版本(雖然你會看到它下載的版本都是 pip-6.0.6-py2.py3-none-any.whl),原本是還需要安裝一個Setuptools,才能進行pip的安裝,不過現在整合在一起了,只要一個pip套件就可以完成安裝。
wget https://bootstrap.pypa.io/get-pip.py
# python 2.6
python get-pip.py
#pip 6.0.6 from /usr/lib/python2.6/site-packages (python 2.6)
pip --version
# python 2.7
python2.7 get-pip.py
#pip 6.0.6 from /usr/local/lib/python2.7/site-packages (python 2.7)
pip2.7 --version
# python3.3
python3.3 get-pip.py
#pip 6.0.6 from /usr/local/lib/python2.7/site-packages (python 2.7)
pip3 --version
安裝virtualenv
安裝方式很簡單,這裡是希望使用2.7版本以上的pip來進行安裝。
pip2.7 install virtualenv
不管是用2.7還是3.3版本安裝,預設會抓最高版本,如果要指定虛擬環境的版本要加上 --python=PYTHON_EXE,如 --python=python2.7,這樣就會載入指定版本。
virtualenv 自定義名稱
進入virtualenv虛擬環境
cd 自定義名稱
source bin/activate
離開虛擬環境
deactivate