在Ubuntu上安裝pyenv


因為找到一個域名枚舉的腳本使用Python3編寫的,而我一直習慣的是使用Python2.7,在自己的Windows7上再安裝個Python怕混了,於是想着在VPS上裝個Python的版本管理工具,也方便自己以后測試,想到了pyenv(之前的是pythonbrew但是已經不在更新了,都是同一個作者),在GitHub上的鏈接為:https://github.com/yyuu/pyenv

安裝pyenv:

安裝Python:

查看可安裝版本列表:

$ pyenv install –list

安裝指定版本:

$ pyenv install 3.4.1

該命令會從github上下載python的源代碼,並解壓到/tmp目錄下,然后在/tmp中執行編譯安裝工作。編譯過程依賴一些其他的庫文件,若庫文件不能滿足,則編譯錯誤,需要重新下載、編譯。。。(常見編譯問題解決方法:https://github.com/yyuu/pyenv/wiki/Common-build-problems)

已知的一些需要預先安裝的庫包括:
  • readline readline-devel readline-static
  • openssl openssl-devel openssl-static
  • sqlite-devel
  • bzip2-devel bzip2-libs

在所有python依賴庫都安裝好的情況下,python的安裝很順利(我在兩個VPS上分別裝的時候,一個非常順利,另一個則總是出問題)。

更新數據庫

安裝完成之后需要對數據庫進行更新:
$ pyenv rehash

查看當前已安裝的python版本
$ pyenv versions
* system (set by /export/root/.pyenv/version)
3.4.1
其中的星號表示使用的是系統自帶的python。

設置全局的python版本

$ pyenv global 3.4.1
$ pyenv versions
system
* 3.4.1 (set by /export/root/.pyenv/version)
當前全局的python版本已經變成了3.4.1。也可以使用pyenv local或pyenv shell臨時改變python版本(重新登錄后失效)。

確認python版本:

$ python
Python 2.7.3 (default, Feb 27 2014, 20:00:17)
[GCC 4.6.3] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
>>>

使用python:

輸入python即可使用新版本的python;
系統命令會以/usr/bin/python的方式直接調用老版本的python;
使用pip安裝第三方模塊時會安裝到~/.pyenv/versions/3.4.1下,不會和系統模塊發生沖突。

———————–

參考文章:

https://github.com/yyuu/pyenv#installation

http://seisman.info/python-pyenv.html

———————–

附上安裝過程中出現的一些問題及其解決方法:

$ pyenv install 3.4.1 #這里選擇目前為止最新的Python3.4.1

……

checking whether the C compiler works… no
configure: error: in `/tmp/python-build.20140621173243.14345/Python-3.4.1′:
configure: error: C compiler cannot create executables

然后再執行:

安裝bzip2和OpenSSL庫依賴(因為Python3.4.1這個版本修復了之前的Heart Bleed那個漏洞,所以OpenSSL的版本和之前的版本不同,需要重新安裝最新版本的OpenSSL,這是我估計的,因為在Python的官方主頁上面看到Python3.4.1這個版本修復了HeartBleed漏洞)

試試再運行一遍基礎庫依賴的安裝命令:

再執行安裝命令,果然就沒問題了:

 


免責聲明!

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



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