복붙노트

[PYTHON] 양조 한 python 2.7로 OS X 10.8에 virtualenv를 설치할 수 없습니다.

PYTHON

양조 한 python 2.7로 OS X 10.8에 virtualenv를 설치할 수 없습니다.

brewed python을 사용하여 virtualenv를 설치하려고하면 다음 오류가 발생합니다.

$ pip install virtualenv
Requirement already satisfied (use --upgrade to upgrade): \
  virtualenv in /Library/Python/2.7/site-packages/virtualenv-1.9.1-py2.7.egg
Cleaning up...

그래서 분명히 pip는 / usr / local에있는 양조 된 python 폴더 대신 시스템 python 폴더를 조사합니다. 어떻게 이것을 피할 수 있습니까?

양조 의사는 문제가없는 것으로 판단하고 경로 우선 순위를 확인합니다.

나는 시스템 파이썬에서 virtualenv 패키지를 제거하려고 시도했다. 그래서 양조 한 핍으로 virtualenv를 설치할 수있었습니다. 그러나 나는이 오류가있어서 virtualenv를 만들 수 없었다.

$ virtualenv datatransfer/
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
    working_set.require(__requires__)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: virtualenv==1.9.1

그래서 나는 virtualenv 시스템을 피할 수 없었습니다.

내가 뭘 잘못하고 있니?

해결법

  1. ==============================

    1.나는 똑같은 문제를 겪었고, 파이썬과 버추얼 벵어의 양조 버전을 제거함으로써 문제를 해결할 수 있었다.

    나는 똑같은 문제를 겪었고, 파이썬과 버추얼 벵어의 양조 버전을 제거함으로써 문제를 해결할 수 있었다.

    brew uninstall python
    brew uninstall pyenv-virtualenv
    

    / usr / local / bin에있는 모든 virtualenv * 파일을 수동으로 다른 폴더로 이동

    sudo mkdir /usr/local/bin/venv-old
    sudo mv /usr/local/bin/virtualenv* /usr/local/bin/venv-old/
    

    새 터미널 탭을 열고 깨끗한 상태인지 다시 확인

    which python # => /usr/bin/python
    which virtualenv # => virtualenv not found
    

    그리고 권장되는 방법 (여기와 여기)을 사용하여 Python과 virtualenv (wrapper)를 설치합니다.

    brew install python --with-brewed-openssl
    # Open a new terminal tab now (to access /usr/local/bin/python)
    pip install virtualenv
    pip install virtualenvwrapper
    
  2. ==============================

    2.나는 똑같은 문제가 있었다.

    나는 똑같은 문제가 있었다.

    나를 위해

    그만큼

    파이썬을 제거하고 다시 설치할 필요가 없었습니다.

  3. ==============================

    3.필자가보기에 .pydistutils.cfg가 $ HOME 디렉토리에 존재한다는 사실이 문제의 원인이었습니다. 그것이 내가 sudo pip install 를 사용하도록 강요 한 이유입니다.

    필자가보기에 .pydistutils.cfg가 $ HOME 디렉토리에 존재한다는 사실이 문제의 원인이었습니다. 그것이 내가 sudo pip install 를 사용하도록 강요 한 이유입니다.

    sudo를 사용하여 pip를 통해 패키지를 설치해야하는 경우, 잘못하고 있고 시스템을 즉시 문제 해결해야합니다. 그렇지 않으면 모든 것이 실패 할 것이고 당신은 그 이유를 알 수 없을 것입니다.

    실행 중 : brew doctor가 .pydistutils.cfg 파일에 대해 경고하므로 시스템을 핵심 변경 한 후에 해당 명령의 상태를 모니터링하는 것을 잊지 마십시오.

    이걸 추적하는 데 꽤 시간이 걸렸지 만 이제는 모두 잘되었습니다. 이것은 정말로 도움이되었습니다.

  4. ==============================

    4.나는 같은 문제가 있었고 Google 그룹에서 해결책을 찾았습니다. / usr / local / bin / virtualenv가 업데이트되지 않은 것 같아서 열면 시스템에 새 버전이 설치되었을 때 이전 virtualenv 1.9.1에 대한 참조가 표시됩니다.

    나는 같은 문제가 있었고 Google 그룹에서 해결책을 찾았습니다. / usr / local / bin / virtualenv가 업데이트되지 않은 것 같아서 열면 시스템에 새 버전이 설치되었을 때 이전 virtualenv 1.9.1에 대한 참조가 표시됩니다.

    따라서 / usr / local / bin / virtualenv를 열어 다음과 같이 바꾸면됩니다.

    #!/usr/local/bin/python
    # -*- coding: utf-8 -*-
    import re
    import sys
    from virtualenv import main
    
    if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())
    

    그리고 그것은 나를 위해 일했습니다!

    출처 : https://groups.google.com/forum/#!topic/python-virtualenv/hL_QDPJsnuY

  5. ==============================

    5.나는 당신과는 달리 양조 의사에 따라 나의 길이 잘못되었다는 것을 알았습니다. 하지만 난 아직도 문제가 (아무 놀람 귀하의 설명을 주어) 수정 후 그래서 난 가상 설치를 제거한 다음 다시 설치했지만 이번에는 sudo, sudo pip install virtualenv

    나는 당신과는 달리 양조 의사에 따라 나의 길이 잘못되었다는 것을 알았습니다. 하지만 난 아직도 문제가 (아무 놀람 귀하의 설명을 주어) 수정 후 그래서 난 가상 설치를 제거한 다음 다시 설치했지만 이번에는 sudo, sudo pip install virtualenv

    이 문제는 시스템 구성에 대한 또 다른 문제가 있거나 Python 경험이 한 시간 더 많은 사람이 왜 이것이 좋지 않은지를 지적 할 수 있다는 것을 나타내는 문제를 해결했습니다. (나는 그것이 글로벌과 관련이 있다고 생각합니다. 설치는 나쁜 습관으로 간주됩니다).

    세스 (Seth)는 당신이 나와 똑같은 것을 보는 것처럼 보입니다.

    ~ 어느 파이썬이 / usr / local / bin / python이되는지

    ~ ls -l / usr / local / bin / python이 나에게 _permissions_etc_ / usr / local / bin / python -> ../Cellar/python/2.7.5/bin/python을 준다.

    어느 pip가 / usr / local / bin / pip를 가리키고 있는지

    ls -l / usr / local / bin / pip는 _permissions_etc_ / usr / local / bin / pip -> ../Cellar/python/2.7.5/bin/pip를 보여줍니다.

    Virtualenv (sudo pip 설치 전에 출력이 없습니다)

    which virtualenv는 / usr / local / bin / virtualenv입니다.

    ls -l / usr / local / bin / virtualenv는 _permissions_etc_ / usr / local / bin / virtualenv를 보여줍니다.

    내가 virtualenv를 만들고 사용할 때 나는 다음과 같은 것을 얻는다.

    workon ve_test
    which python
    /Users/_username_/.virtualenvs/ve_test/bin/python
    (ve_test)➜  ~PIP_VIRTUALENV_BASE  python --version
    Python 2.7.5
    

    FWIW 내 .zshrc는 다음과 같습니다.

    # Python related
    # http://hackercodex.com/guide/python-virtualenv-on-mac-osx-mountain-lion-10.8/
    # http://docs.python-guide.org/en/latest/dev/virtualenvs.html
    source /usr/local/bin/virtualenvwrapper.sh
    # virtualenv should use Distribute instead of legacy setuptools
    export VIRTUALENV_DISTRIBUTE=true
    # Centralized location for new virtual environments
    export PIP_VIRTUALENV_BASE=$HOME/Projects/PythonVirtualEnv
    # cache pip-installed packages to avoid re-downloading
    export PIP_DOWNLOAD_CACHE=$HOME/.pip/cache
    
  6. from https://stackoverflow.com/questions/16860971/cant-pip-install-virtualenv-in-os-x-10-8-with-brewed-python-2-7 by cc-by-sa and MIT license