Development/Python3..x

[python3.x] pyenv 설정 오류 관련 (WARNING: `pyenv init -` no longer sets PATH.)

louky 2021. 6. 5. 14:45
반응형

python에서 사용하는 pyenv이다. 

pyenv는 python버전 관리를 유용하게 해주는 tool이다. 

 

잘 사용하지는 못하지만 계속 사용하고 있는데  virtualenv 만큼 편한거 같다.  virtualenv와 비교 했을때 각각 장단점이 있는거 같다.

 

최근  python3.x버전이  없는 시스템에 pyenv를 통해 설치를 하였다 

예전과 동일하게 설치 하였는데 갑자기 안보이던 warning 메시지가 보이기 시작했다. 

물론 사용상에 크게 문제는 되지 않지만 시스템 엔지니어를 하고 있는 필자로서는 눈에 가시처럼 보이기 시작하였다. 

 

# source .bashrc

WARNING: `pyenv init -` no longer sets PATH.
Run `pyenv init` to see the necessary changes to make to your configuration.

갑자기 왜????

pyenv를 설치할때 하라는 데로 .bashrc에 등록을 했는데 오류??? 이것참 황당하다.. 

 

하지만 나에겐 구글이 있었고 검색을 해보니 나 뿐만  아니라 계속들 발생을 하는것 같았다. 

 

확인 결과 설정했던 환경변수를 조금 수정하니  "warning" 메시지가 사라졌다. 

 

<수정전>

# vi ~/.bashrc

~(Skip)

### pyenv env
export PATH="/root/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

...

 

<수정후>

# vi ~/.bashrc

~(skip)
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init --path)"
fi

...

 

위와 같이 설정을 변경을 해도 되지만 기존 설정에서 아래와 같이 path문구만 넣어도 warning 없이 정상 동작 한다. 

 

# vi ~/.bashrc

~(skip)

### pyenv env
export PATH="/root/.pyenv/bin:$PATH"
## eval "$(pyenv init -)"           
eval "$(pyenv init --path)" 	  	#### "--path" 로 추가/변경 한다. 
eval "$(pyenv virtualenv-init -)"


....

 

간단하고 아주 간단한 수정 작업이다.. 

근데 왜 갑자기.... 안나오던 warning이 나왔던 것일까...ㅠㅠ

 

여튼 이로써 쉽게 해결 하였다. 

 

 

반응형