Я использую Precise Pangolin amd64. Я установил Python 3.3 из ppa:fkrull/deadsnakes.
Теперь я хочу на самом деле использовать эта новая версия Python в virtualenv. Но как я могу это сделать? Я получаю следующую ошибку:
$ virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3Running virtualenv with interpreter /usr/bin/python3.3The --no-site-packages flag is deprecated; it is now the default behavior.New python executable in /home2/USERNAME/.virtualenvs/pywork3/bin/python3.3Also creating executable in /home2/USERNAME/.virtualenvs/pywork3/bin/pythonTraceback (most recent call last): File "/usr/local/lib/python2.7/site-packages/site.py", line 73, in <module> __boot() File "/usr/local/lib/python2.7/site-packages/site.py", line 2, in __boot import sys, imp, os, os.path ImportError: No module named 'imp'ERROR: The executable /home2/USERNAME/.virtualenvs/pywork3/bin/python3.3 is not functioningERROR: It thinks sys.prefix is '/home2/USERNAME/.virtualenvs' (should be '/home2/USERNAME/.virtualenvs/pywork3')ERROR: virtualenv is not compatible with this system or executable
Если вместо этого я явно использую python3.3
чтобы вызвать virtualenv, я получаю эту ошибку:
$ python3.3 /usr/bin/virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3Traceback (most recent call last): File "/usr/bin/virtualenv", line 2, in <module> import virtualenvImportError: No module named 'virtualenv'
Я застрял. Любая помощь будет очень признательна!
РЕДАКТИРОВАТЬ: Следуя совету @thefourtheye, я очистил свой местный site-packages
каталог (фактически только удаление site.py
). Теперь я продвинулся еще на шаг, но virtualenv жалуется на пропавшую easy_install
:
Error [Errno 2] No such file or directory: '/home2/USERNAME/.virtualenvs/pywork3/bin/easy_install' while executing command /home2/USERNAME/.virt...rk3/bin/easy_install /usr/share/python-virtualenv/pip-1.1.tar.gz
Я действительно установил пакет python3-setuptools
, который устанавливает версию easy_install для Py3.
ПРАВКА2:
Вот подробный вывод, без явной передачи --distribute
и --no-site-packages
, поскольку эти два переключателя являются поведением по умолчанию моего virtualenv:
$ virtualenv --verbose -p /usr/bin/python3.3 ~/.virtualenvs/pywork3Running virtualenv with interpreter /usr/bin/python3.3Creating /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3Symlinking Python bootstrap modules Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/config-3.3m Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/lib-dynload Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/os.py Ignoring built-in bootstrap module: posix Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/posixpath.py Cannot import bootstrap module: nt Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/ntpath.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/genericpath.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/fnmatch.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/locale.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/encodings Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/codecs.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/stat.py Cannot import bootstrap module: UserDict Cannot import bootstrap module: copy_reg Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/types.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/re.py Cannot import bootstrap module: sre Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/sre_parse.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/sre_constants.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/sre_compile.py Ignoring built-in bootstrap module: zlib Cannot import bootstrap module: _abcoll Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/warnings.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/linecache.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/abc.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/io.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/_weakrefset.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/copyreg.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/tempfile.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/random.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/__future__.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/collections Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/keyword.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/tarfile.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/shutil.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/struct.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/copy.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/base64.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/bisect.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/_dummy_thread.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/hashlib.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/heapq.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/hmac.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/reprlib.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/rlcompleter.py Symlinking /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/weakref.pyCreating /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/site-packagesWriting /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/site.pyWriting /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/orig-prefix.txtWriting /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/no-global-site-packages.txtCreating parent directories for /home2/USERNAME/.virtualenvs/pywork3/includeSymlinking /home2/USERNAME/.virtualenvs/pywork3/include/python3.3mCreating /home2/USERNAME/.virtualenvs/pywork3/binNew python executable in /home2/USERNAME/.virtualenvs/pywork3/bin/python3.3Changed mode of /home2/USERNAME/.virtualenvs/pywork3/bin/python3.3 to 0o755Also creating executable in /home2/USERNAME/.virtualenvs/pywork3/bin/pythonChanged mode of /home2/USERNAME/.virtualenvs/pywork3/bin/python to 0o755Testing executable with /home2/USERNAME/.virtualenvs/pywork3/bin/python3.3 -c "import sysprefix = sys.prefixif sys.version_info[0] == 3: prefix = prefix.encode('utf8')if hasattr(sys.stdout, 'detach'): sys.stdout = sys.stdout.detach()elif hasattr(sys.stdout, 'buffer'): sys.stdout = sys.stdout.buffersys.stdout.write(prefix)"Got sys.prefix result: '/home2/USERNAME/.virtualenvs/pywork3'Creating /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/distutilsWriting /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/distutils/__init__.pyWriting /home2/USERNAME/.virtualenvs/pywork3/lib/python3.3/distutils/distutils.cfgUsing existing distribute egg: /usr/share/python-virtualenv/distribute-0.6.24.tar.gzInstalling distribute..............................................................................................................................................................................................................................................................................................................................................................................................................done.Installing existing pip-1.1.tar.gz distribution: /usr/share/python-virtualenv/pip-1.1.tar.gzInstalling pip... Error [Errno 2] No such file or directory: '/home2/USERNAME/.virtualenvs/pywork3/bin/easy_install' while executing command /home2/USERNAME/.virt...rk3/bin/easy_install /usr/share/python-virtualenv/pip-1.1.tar.gz...Installing pip...done.Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/virtualenv.py", line 2283, in <module> main() File "/usr/lib/python2.7/dist-packages/virtualenv.py", line 938, in main never_download=options.never_download) File "/usr/lib/python2.7/dist-packages/virtualenv.py", line 1054, in create_environment install_pip(py_executable, search_dirs=search_dirs, never_download=never_download) File "/usr/lib/python2.7/dist-packages/virtualenv.py", line 643, in install_pip filter_stdout=_filter_setup) File "/usr/lib/python2.7/dist-packages/virtualenv.py", line 976, in call_subprocess cwd=cwd, env=env) File "/usr/lib/python3.3/subprocess.py", line 818, in __init__ restore_signals, start_new_session) File "/usr/lib/python3.3/subprocess.py", line 1416, in _execute_child raise child_exception_type(errno_num, err_msg)FileNotFoundError: [Errno 2] No such file or directory: '/home2/USERNAME/.virtualenvs/pywork3/bin/easy_install'