首先安裝必要的基礎環境工具
如gcc等
安裝(下載即可用)
$ git clone https://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
ubunntu安裝軟件時出現,無法修正錯誤,因爲您要求某些軟件包保持現狀,就是它們破壞了軟件包間的依賴關係
因爲在提示中發現要安裝的東西總是依賴關係不滿足,給出的理由似乎時系統中已經安裝了高版本的插件(在我看來是高版本的,其實並不是),所以我也不敢動。。。
因爲怕系統出問題,所以也不敢卸載重新安裝啊什麼的。
然後去百度,也不知道哪個解決方案是正確的。。。
就隨便試一個把。給的方法是在更新源理沒有選中重要的更新和推薦的更新兩項,直選中了一些其他軟件項下面的更新源。
結果證明,就是這麼回事兒。。。
在執行一次 sudo apt-get update
如果出現 XXX在某行出現多次那麼打開 /etc/apt/sources.list 文件找到對應的行刪除就行
在用apt-get install libssl-dev命令,沒有討厭的依賴不滿足的提示了。
然後用pyenv install命令,重新下載安裝(這是pyenv可以改進的一個地方,之前如果下載過一個版本之後,重新安裝的時候還會重新下載.)
這次沒有error了,但是有幾個warning。。。
然後繼續搜,從一篇文章中,最後的地方給出了python安裝時的必要庫。注意是python安裝必要的庫。python在安裝時是下載的源代碼然後在本地用llvm編譯的。
下面是安裝必要庫的命令:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
安裝幾個必要庫之後,在pyenv install之後就是沒有warning的成功拉
使用(常用命令)
1.安裝python2.7.8版本
zhangl@zhangl:~$ pyenv install 2.7.8
Downloading Python-2.7.8.tar.xz...
-> https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.xz
Installing Python-2.7.8...
patching file ./Lib/site.py
patching file ./Lib/ssl.py
patching file ./Modules/_ssl.c
WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
WARNING: The Python sqlite3 extension was not compiled. Missing the SQLite3 lib?
Installing pip from https://bootstrap.pypa.io/get-pip.py...
Installed Python-2.7.8 to /home/zhangl/.pyenv/versions/2.7.8
2.查看系統當前使用的python版本
zhangl@zhangl:~$ pyenv version
system (set by /home/zhangl/.pyenv/version)
- 1
- 2
3.查看系統有哪些python版本
zhangl@zhangl:~$ pyenv versions
* system (set by /home/zhangl/.pyenv/version)
2.7.8
3.5.1
4.查看python可用版本資源
zhangl@zhangl:~$ pyenv install --list
Available versions:
2.1.3
2.2.3
2.3.7
2.4
......
5.刷新版本包(每次安裝新版本時,執行一次)
zhangl@zhangl:~$ pyenv rehash
6.設置本地默認版本(*代表當前默認使用版本)
zhangl@zhangl:~$ pyenv versions
* system (set by /home/zhangl/.python-version)
2.7.8
3.5.1
zhangl@zhangl:~$ pyenv local 2.7.8
zhangl@zhangl:~$ pyenv versions
system
* 2.7.8 (set by /home/zhangl/.python-version)
3.5.1
7.同時設置多個當前版本
zhangl@zhangl:~$ pyenv local 2.7.8 3.5.1
zhangl@zhangl:~$ pyenv versions
system
* 2.7.8 (set by /home/zhangl/.python-version)
* 3.5.1 (set by /home/zhangl/.python-version)