python-virtualenv를 사용하여 가상 환경을 만들 수 없습니다.

python-virtualenv를 사용하여 가상 환경을 만들 수 없습니다.

현재 저는 우분투 14.04에서 16.04 64bt 버전으로 노트북을 업데이트했습니다.

Python 2.7과 모든 것을 설치하고 모든 것을 시도했지만 ubntu 14.04에서 잘 작동하는 동안 다음과 같은 오류가 발생하는 virtualevn 명령을 제안하고 이를 해결하기 위한 최상의 솔루션을 제안해 주세요.

현재 나는 다음과 같이 이 문제를 해결하기 위해 많은 것을 시도했습니다. setuptools 및 virutalenv 및 많은 종속성을 제거하고 다양한 게시물에서 제안한대로 다시 설치했습니다.

New python executable in /home/jai/Desktop/jai/jai/bin/python
Installing setuptools, pip, wheel...
  Complete output from command /home/jai/Desktop/jai/jai/bin/python - setuptools pip wheel:
  Collecting setuptools
Exception:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/commands/install.py", line 324, in run
    requirement_set.prepare_files(finder)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/req/req_set.py", line 554, in _prepare_file
    require_hashes
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/req/req_install.py", line 278, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/index.py", line 465, in find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/index.py", line 423, in find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/index.py", line 568, in _get_pages
    page = self._get_page(location)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/index.py", line 683, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/index.py", line 792, in get_page
    "Cache-Control": "max-age=600",
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/sessions.py", line 488, in get
    return self.request('GET', url, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/download.py", line 386, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/sessions.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/sessions.py", line 596, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/cachecontrol/adapter.py", line 47, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/adapters.py", line 390, in send
    conn = self.get_connection(request.url, proxies)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/adapters.py", line 290, in get_connection
    proxy_manager = self.proxy_manager_for(proxy)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/adapters.py", line 184, in proxy_manager_for
    **proxy_kwargs
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv_support/pip-9.0.1-py2.py3-none-any.whl/pip/_vendor/requests/adapters.py", line 43, in SOCKSProxyManager
    raise InvalidSchema("Missing dependencies for SOCKS support.")
InvalidSchema: Missing dependencies for SOCKS support.
----------------------------------------
...Installing setuptools, pip, wheel...done.
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 9, in <module>
    load_entry_point('virtualenv==15.1.0', 'console_scripts', 'virtualenv')()
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv.py", line 713, in main
    symlink=options.symlink)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv.py", line 945, in create_environment
    download=download,
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv.py", line 901, in install_wheel
    call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv-15.1.0-py2.7.egg/virtualenv.py", line 797, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command /home/jai/Desktop/jai/jai/bin/python - setuptools pip wheel failed with error code 2

답변1

여기서 문제는 (제가 보기에) 10.10 이후 우분투/데비안 브랜치 사용자의 관점에서 virtualenv의 전체 지점이 python 2.7을 컴파일할 수 있을 때 python 2.7을 사용하여 virtualenv를 실행하려고 한다는 것입니다. Python 2.7을 로컬에 설치하지 않고 Python 3(사전 설치 및 시스템의 일부) 환경에서 프로그램을 실행합니다(거의 항상 복구할 수 없을 정도로 시스템을 엉망으로 만듭니다).

여기서 볼 수 있는 두 번째 나쁜 습관은 우분투 업데이트입니다. 여기에서는 작동하는 것처럼 보이지만(그러나 다시 말하지만 이 기능은 거의 항상 작동하지 않으며 시스템을 망칠 것입니다) 새 버전으로 업그레이드하려면 Live USB 설치 방법을 사용해야 합니다.

어쨌든 저는 Python 2.7 컴파일이 작동하려면 몇 가지 전제 조건을 확인하는 것이 좋습니다.

32비트 아치를 활성화해야 합니다.

sudo dpkg --add-architecture i386

pip는 최신 상태여야 합니다(설치로는 이 작업을 수행하지 않으며, 설치 후에 실행해야 합니다).

pip install --upgrade pip

pip 빌드에서 가능한 모든 종속성을 해결해야 합니다. 가능한 MIA는 다음과 같습니다:

libonig2 autoconf libtool pkg-config python-opengl python-imaging python-pyrex python-pyside.qtopengl idle-python2.7 qt4-dev-tools qt4-designer libqtgui4 libqtcore4 libqt4-xml libqt4-test libqt4-script libqt4-network libqt4-dbus python-pip python-qt4 python-qt4-gl python-numpy python-matplotlib libgle3 python-dev libssl-dev libffi-dev libxslt-dev libxml2-dev libxslt1-dev zlib1g-dev python-ipaddress python-enum34 python-pathlib python-py python-pycparser python-dateutil python-cffi libappindicator1 python-gpgme libindicator7 wget  libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 libc6:i386 liblua5.1-0-dev liblua50-dev liblualib50-dev python-pyside.qtwebkit libgnutls30 libgnutls30:i386 virtualenv build-essential dh-make

그 중 일부를 설치하려면 파트너 다중 우주 및 기본 apt-get 설정이 필요합니다.

sudo sed -i 's/# deb http:\/\/archive.canonical.com/deb http:\/\/archive.canonical.com/' /etc/apt/sources.list
yes N | sudo dpkg --configure -a
#only if necessary
#sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse"

다른 pip 명령을 실행하기 전에 virtualenv 내부에 있어야 합니다.

행운을 빌어 요 ! :)

답변2

오랫동안 어려움을 겪은 끝에 미래에 갇힌 사람이 다음 단계를 따를 수 있다면 해결책을 찾았습니다.

나는 다음과 같은 setuptools 및 휠 때문에 이 모든 일이 발생한다는 것과 동일한 문제를 겪었습니다.

  1. pip에서 setuptools와 휠을 제거했습니다.
  2. 또한 "apt-get 제거 휠 setuptools virutalenv(제 경우에는 휠과 setuptool이 모두 존재했으며 pip 및 apt-get 설치에서 서로 충돌할 수 있습니다.)
  3. 다운로드

  4. 두 도구를 모두 새로 설치하십시오.

이 방법은 데스크탑과 노트북 모두에서 문제를 해결했습니다.
내가 여기에 게시한 이 솔루션은 다음과 같습니다.

https://github.com/pypa/virtualenv/issues/876

관련 정보