Pyenv 安装系统版本而不是选择的本地版本
Pyenv installs the system version instead of the chosen local version
我想知道为什么这里选错了版本。这里有一些信息:
✦ ❯ which python3
/usr/bin/python3
~/ds/test-pyenv
✦ ❯ python3 -V
Python 3.8.10
~/ds/test-pyenv
✦ ❯ pyenv versions
system
* 3.10.0 (set by /home/bebop/.pyenv/version)
3.9.9
~/ds/test-pyenv
✦ ❯ pyenv local
pyenv: no local version configured for this directory
~/ds/test-pyenv
✦ ❯ pyenv local 3.10.0
为什么这里检测不到本地版本?
3.8.10 而不是 3.10.0
~/ds/test-pyenv via v3.8.10
✦ ❯ python3 -m venv .venv
~/ds/test-pyenv via v3.8.10
✦ ❯ source .venv/bin/activate
~/ds/test-pyenv via v3.8.10 (.venv)
✦ ❯ which python3
/home/rsale/ds/test-pyenv/.venv/bin/python3
我怀疑问题出在这些模拟链接上,但我不知道它们是什么时候创建的。
关于我应该如何进行的任何想法?
~/ds/test-pyenv via v3.8.10 (.venv)
✦ ❯ la .venv/bin
lrwxrwxrwx 1 rsale rsale 7 Jan 16 21:01 python -> python3
lrwxrwxrwx 1 rsale rsale 16 Jan 16 21:01 python3 -> /usr/bin/python3
我也在用WSL2
不是
的副本
Fernando Espinosa 的回答假定未设置本地 pyenv 版本,我显然正在这样做。
编辑更多信息
✦ ❯pyenv doctor
Cloning /home/rsale/.pyenv/plugins/pyenv-doctor/bin/.....
Installing python-pyenv-doctor...
Installed python-pyenv-doctor to /tmp/pyenv-doctor.20220116232505.7407/prefix
Congratulations! You are ready to build pythons!
✦ ❯pyenv
pyenv 2.2.2
Usage: pyenv <command> [<args>]
Some useful pyenv commands are:
--version Display the version of pyenv
activate Activate virtual environment...
✦ ❯which pyenv
pyenv () {
local command
command="${1:-}"
if [ "$#" -gt 0 ]
then
shift
fi
case "$command" in
(activate | deactivate | rehash | shell) eval "$(pyenv "sh-$command" "$@")" ;;
(*) command pyenv "$command" "$@" ;;
esac
}
别名 pyenv 做到了
alias pyenv='$PYENV_ROOT/bin/pyenv'
而
将 pyenv 添加到路径
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
或者没有。
export PATH="$PYENV_ROOT/shims:$PATH"
仍然想知道为什么 pyenv failed
但 pyenv doctor
有效。
我想知道为什么这里选错了版本。这里有一些信息:
✦ ❯ which python3
/usr/bin/python3
~/ds/test-pyenv
✦ ❯ python3 -V
Python 3.8.10
~/ds/test-pyenv
✦ ❯ pyenv versions
system
* 3.10.0 (set by /home/bebop/.pyenv/version)
3.9.9
~/ds/test-pyenv
✦ ❯ pyenv local
pyenv: no local version configured for this directory
~/ds/test-pyenv
✦ ❯ pyenv local 3.10.0
为什么这里检测不到本地版本?
3.8.10 而不是 3.10.0
~/ds/test-pyenv via v3.8.10
✦ ❯ python3 -m venv .venv
~/ds/test-pyenv via v3.8.10
✦ ❯ source .venv/bin/activate
~/ds/test-pyenv via v3.8.10 (.venv)
✦ ❯ which python3
/home/rsale/ds/test-pyenv/.venv/bin/python3
我怀疑问题出在这些模拟链接上,但我不知道它们是什么时候创建的。 关于我应该如何进行的任何想法?
~/ds/test-pyenv via v3.8.10 (.venv)
✦ ❯ la .venv/bin
lrwxrwxrwx 1 rsale rsale 7 Jan 16 21:01 python -> python3
lrwxrwxrwx 1 rsale rsale 16 Jan 16 21:01 python3 -> /usr/bin/python3
我也在用WSL2
不是
Fernando Espinosa 的回答假定未设置本地 pyenv 版本,我显然正在这样做。
编辑更多信息
✦ ❯pyenv doctor
Cloning /home/rsale/.pyenv/plugins/pyenv-doctor/bin/.....
Installing python-pyenv-doctor...
Installed python-pyenv-doctor to /tmp/pyenv-doctor.20220116232505.7407/prefix
Congratulations! You are ready to build pythons!
✦ ❯pyenv
pyenv 2.2.2
Usage: pyenv <command> [<args>]
Some useful pyenv commands are:
--version Display the version of pyenv
activate Activate virtual environment...
✦ ❯which pyenv
pyenv () {
local command
command="${1:-}"
if [ "$#" -gt 0 ]
then
shift
fi
case "$command" in
(activate | deactivate | rehash | shell) eval "$(pyenv "sh-$command" "$@")" ;;
(*) command pyenv "$command" "$@" ;;
esac
}
别名 pyenv 做到了
alias pyenv='$PYENV_ROOT/bin/pyenv'
而 将 pyenv 添加到路径
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
或者没有。
export PATH="$PYENV_ROOT/shims:$PATH"
仍然想知道为什么 pyenv failed
但 pyenv doctor
有效。