Главная > Unix-like, Администрирование > Virtualenv: Ошибки после обновления версии Python.

Virtualenv: Ошибки после обновления версии Python.

Как я писал в прошлом посте, недавно обновил Ubuntu до 13.04. Как и ожидалось, всплыло ряд проблем, и вот новая из них: обновился python до 2.7.4 и старые virtualenv'ы перестали работать. Выглядит это примерно так:

Traceback (most recent call last):
File "/home/lizzard/.virtualenvs/whenzo/bin/ipython", line 5, in
from pkg_resources import load_entry_point
File "/home/lizzard/.virtualenvs/whenzo/local/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg/pkg_resources.py", line 16, in
import sys, os, zipimport, time, re, imp, types
File "/home/lizzard/.virtualenvs/whenzo/lib/python2.7/re.py", line 105, in
import sre_compile
File "/home/lizzard/.virtualenvs/whenzo/lib/python2.7/sre_compile.py", line 14, in
import sre_parse
File "/home/lizzard/.virtualenvs/whenzo/lib/python2.7/sre_parse.py", line 17, in
from sre_constants import *
File "/home/lizzard/.virtualenvs/whenzo/lib/python2.7/sre_constants.py", line 18, in
from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT

Фикс оказался достаточно простым - надо просто пересоздать virtualenv (я использую virtualenvwrapper, но с "голым" virtualenv по-идее тоже должно прокатить):

$ mkvirtualenv <ve_name>

При этом, все установленные ранее пакеты сохранились и не пришлось всё переустанавливать, а это неплохая экономия времени, когда вам предстоит скомпилировать что-то весьма внушительное (тот же недавно упомянутый PySide, ещё, говорят, numpy славится временем установки).

Если после этого проблема не решилась, то попробуйте удалить все pyc-файлы, например, так:

$ find $VIRTUAL_ENV -name \*.pyc -delete && find <path_to_your_project> -name \*.pyc -delete

Пожалуйста, оцените полезность и качество данной статьи. Одна звезда - плохо, 5 - хорошо.
1/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.2/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.3/5. Мы будем признательны, если вы напишете комментарий с причиной низкой оценки.4/5.5/5. (Еще не оценили)
Загрузка...
  1. Пока что нет комментариев.
  1. Пока что нет уведомлений.