Pyenv:修订间差异

来自Gea-Suan Lin's Wiki
跳到导航 跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
无编辑摘要
 
(未显示同一用户的33个中间版本)
第2行: 第2行:


== 安裝 ==
== 安裝 ==
先安裝系統需要的套件:
<syntaxhighlight lang="bash">
sudo apt install -y build-essential curl git libbz2-dev libcurl4-openssl-dev libffi-dev liblzma-dev libreadline-dev libsqlite3-dev libssl-dev libz-dev tk-dev; sudo apt clean
</syntaxhighlight>
接下來在自己的空間下安裝pyenv,然後安裝最新版的Python 3,並且更新pip:
<syntaxhighlight lang="bash">
git clone https://github.com/pyenv/pyenv.git ~/.pyenv; echo -e "export PYENV_ROOT=\"\${HOME}/.pyenv\"\nif [ -d \"\${PYENV_ROOT}\" ]; then\n   export PATH=\"\${PYENV_ROOT}/bin:\${PYENV_ROOT}/shims:\${PATH}\"\n   eval \"\$(pyenv init - --no-rehash)\"\nfi" >> ~/.profile; source ~/.profile; PY_VER=$(pyenv install -l | grep -o -P '^  3(\.\d+)+$' | sort -k 1,1 -k 2,2 -k 3,3 -n -t . | tail -n 1 | awk '{print $1}'); pyenv install ${PY_VER}; pyenv global ${PY_VER}; pip install -U pip; pip install -U poetry
</syntaxhighlight>
如果要裝Python 2的話(像是[[Trac]] 1.4),最後一個版本是2.7.18:
<syntaxhighlight lang="bash">
git clone https://github.com/pyenv/pyenv.git ~/.pyenv; echo -e "export PYENV_ROOT=\"\${HOME}/.pyenv\"\nif [ -d \"\${PYENV_ROOT}\" ]; then\n   export PATH=\"\${PYENV_ROOT}/bin:\${PYENV_ROOT}/shims:\${PATH}\"\n   eval \"\$(pyenv init - --no-rehash)\"\nfi" >> ~/.profile; source ~/.profile; export PY_VER=2.7.18; pyenv install ${PY_VER}; pyenv global ${PY_VER}; pip install -U pip; pip install -U poetry
</syntaxhighlight>
== 升級 ==
=== pyenv ===
<syntaxhighlight lang="bash">
cd ~/.pyenv; git pull -v
</syntaxhighlight>
=== Python ===
裝完新版後可以跑:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
sudo apt install -y build-essential libbz2-dev libcurl4-openssl-dev libffi-dev libreadline-dev libsqlite3-dev libssl-dev libz-dev; sudo apt clean
pyenv shell 3.9.13; pip install -U -r <(pyenv shell 3.9.1; pip freeze | sed 's/==.*//')
</syntaxhighlight>
</syntaxhighlight>


第14行: 第44行:


* {{Official|https://github.com/pyenv/pyenv}} {{en}}
* {{Official|https://github.com/pyenv/pyenv}} {{en}}
[[Category:軟體]]

2023年10月16日 (一) 10:35的最新版本

pyenv是一套在使用者環境下管理多個不同Python版本的套件。

安裝

先安裝系統需要的套件:

sudo apt install -y build-essential curl git libbz2-dev libcurl4-openssl-dev libffi-dev liblzma-dev libreadline-dev libsqlite3-dev libssl-dev libz-dev tk-dev; sudo apt clean

接下來在自己的空間下安裝pyenv,然後安裝最新版的Python 3,並且更新pip:

git clone https://github.com/pyenv/pyenv.git ~/.pyenv; echo -e "export PYENV_ROOT=\"\${HOME}/.pyenv\"\nif [ -d \"\${PYENV_ROOT}\" ]; then\n    export PATH=\"\${PYENV_ROOT}/bin:\${PYENV_ROOT}/shims:\${PATH}\"\n    eval \"\$(pyenv init - --no-rehash)\"\nfi" >> ~/.profile; source ~/.profile; PY_VER=$(pyenv install -l | grep -o -P '^  3(\.\d+)+$' | sort -k 1,1 -k 2,2 -k 3,3 -n -t . | tail -n 1 | awk '{print $1}'); pyenv install ${PY_VER}; pyenv global ${PY_VER}; pip install -U pip; pip install -U poetry

如果要裝Python 2的話(像是Trac 1.4),最後一個版本是2.7.18:

git clone https://github.com/pyenv/pyenv.git ~/.pyenv; echo -e "export PYENV_ROOT=\"\${HOME}/.pyenv\"\nif [ -d \"\${PYENV_ROOT}\" ]; then\n    export PATH=\"\${PYENV_ROOT}/bin:\${PYENV_ROOT}/shims:\${PATH}\"\n    eval \"\$(pyenv init - --no-rehash)\"\nfi" >> ~/.profile; source ~/.profile; export PY_VER=2.7.18; pyenv install ${PY_VER}; pyenv global ${PY_VER}; pip install -U pip; pip install -U poetry

升級

pyenv

cd ~/.pyenv; git pull -v

Python

裝完新版後可以跑:

pyenv shell 3.9.13; pip install -U -r <(pyenv shell 3.9.1; pip freeze | sed 's/==.*//')

相關條目

外部連結