1. 程式人生 > >ubuntu下安裝多版本Python

ubuntu下安裝多版本Python

 

系統環境:ubuntu14.04LTS,系統預設的python版本為2.7,我這裡想要再安裝一個3.4.3版本。

  • 再安裝python之前,我們首先要安裝這個管理工具pyenv:
$ git clone git://github.com/yyuu/pyenv.git ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ exec $SHELL -l

  我們還可以通過下面這個命令來檢視可以安裝的python版本:

$ pyenv install --list
  • 如果我們確定要安裝python3.4.3的話,接下來我們就可以安裝python了,但是再安裝之前,我們必須要安裝python所需要的依賴包,這個必須要安裝,安裝會失敗的:
$ sudo apt-get install libc6-dev gcc
$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
  • 上面的依賴包搞定之後,我們就可以安裝python了:
$ pyenv install 3.4.3 -v

  該命令會從github上下載python的原始碼,並解壓到/tmp目錄下,然後在/tmp中執行編譯工作。若依賴包沒有安裝,則會出現編譯錯誤,需要在安裝依賴包滯後重新執行該命令。

  • 安裝完成之後,需要使用如下命令對資料庫進行更新:
$ pyenv rehash
  • 檢視當前已經安裝的python版本
$ pyenv versions
* system (set by /home/seisman/.pyenv/version)
3.4.3

  其中星號代表是當前系統正在使用的python版本是系統自帶的。

  • 設定全域性的python版本
$ pyenv global 3.4.3
$ pyenv versions
system
* 3.4.3 (set by /home/seisman/.pyenv/version)

  從上面,我們可以看出來當前的python版本已經變為了3.4.3。也可以使用pyenv local或pyenv shell臨時改變python的版本。

  • 確認python版本
$ python
Python 3.4.3 (default, Apr  1 2015, 19:10:43) 
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.

  注意事項:

  • 輸入python即可使用新版的python;
  • 系統自帶的指令碼會以/usr/bin/python的方式直接呼叫老版本的python,因而不會對系統指令碼產生影響;
  • 使用pip安裝第三方模組時會安裝到~/.pyenv/versions/3.4.3下,不會和系統模組發生衝突;
  • 使用pip安裝模組後,可能需要執行pyenv rehash更新資料庫。

  參考資料:

  [1] http://seisman.info/python-pyenv.html

  [2] http://crazyof.me/blog/archives/13.html