Форум сайта python.su
Столкнулся с проблемой установки пакетов python с помощью easy_install
при установки большинства пакетов выдает ошибку об отсутствии атрибута __getstate__
проблема была решена комментированием строк
pr_state = pkg_resources.__getstate__()
и
pkg_resources.__setstate__(pr_state)
в файле
sandbox.py пакета setuptools
Кто сталкивался с такой проблемой и вся эта куча английских букав не кажется пустой прошу разъяснить данную ситуацию
Офлайн
Не сталкивался.
Имеет смысл попробовать обновить setuptools (у меня 0.6c11 для python2.5 и python2.6).
..bw
Офлайн
bw спасибо за совет.
Дело в том, что я в python совсем недавно и знания у меня чисто теоретические. Коснулся практики и понял, что здесь слишком много подводных камней о которых совсем мало информации в инете.
В общем этим подводным камнем стал пакет setuptools с порядок его работы с пакетами модулей.
В папке site-packages у меня оказались нормальная папка с setuptools и аналогичный пакет setuptools но более старой версии в формате egg. Вот это самое яйцо я удалил. Вроде все заработало.
А вообще работа самого python'a с этими яйцами до конца не понята. Я так понял модули импортируются прямо из них???
Офлайн
> здесь слишком много подводных камней
Не здесь, везде, чем бы не занимался.
> В папке site-packages у меня оказались нормальная папка с setuptools и аналогичный пакет setuptools но более старой версии в формате egg.
Первый, надо полагать, установлен из пакета дистрибутива Linux (Debian/Ubuntu?). Какие лучше пакеты ставить, дистрибутивные или яичные (easy_install и pip, setuptools и distribute), не скажу, по ситуации. Я бы ставил только ОСевые, но, во первых, не все имеются, а во вторых, при попытке установки яичных и подтягивании зависимостей, ОСевые пропускаются (видимо из-за косяков майнтайнеров), а значит эти зависимости качаются из сети и дублируют уже существующие (установленные из репозитория дистрибутива Linux/BSD). почему нельзя полностью отказаться от дистрибутивных пакетов и пользоваться только яичными догадаться не сложно, они устанавливаются как зависимости для различного софта из репы ОС.
> Я так понял модули импортируются прямо из них???
Да. Это zip'ы или же просто директории.
..bw
Офлайн
bw:) Нет!!! Я пришел с php и всего, что связано с web и, поверьте, никогда не испытывал проблемы с информацией. А начал изучать Питона и первый раз за все время начал читать документация на английском языке. Млин, тут с программированием мозг вывихнешь, а с английским еще и расплющишь. Люблю трудности, жаль только, что они тормозят прогресс. извините за офф.топ.
> здесь слишком много подводных камней
Не здесь, везде, чем бы не занимался.
bw+1 Уяснил для себя много нового! Проблема в том, что я на Windows работаю, а там про осевые/неосевые пакеты ничего неизвестно.
> В папке site-packages у меня оказались нормальная папка с setuptools и аналогичный пакет setuptools но более старой версии в формате egg.
Первый, надо полагать, установлен из пакета дистрибутива Linux (Debian/Ubuntu?). Какие лучше пакеты ставить, дистрибутивные или яичные (easy_install и pip, setuptools и distribute), не скажу, по ситуации. Я бы ставил только ОСевые, но, во первых, не все имеются, а во вторых, при попытке установки яичных и подтягивании зависимостей, ОСевые пропускаются (видимо из-за косяков майнтайнеров), а значит эти зависимости качаются из сети и дублируют уже существующие (установленные из репозитория дистрибутива Linux/BSD). почему нельзя полностью отказаться от дистрибутивных пакетов и пользоваться только яичными догадаться не сложно, они устанавливаются как зависимости для различного софта из репы ОС.
Отредактировано (Авг. 5, 2010 16:07:13)
Офлайн
> До того, как познакомиться с setuptools и принципами установки пакетов я все делал вручную
Думаю так все делали.
Вы ещё не знаете, что такое virtualenv? Как же я вам завидую! М-м-м-м… virtualenv… :-).
..bw
Офлайн
BW, думаете стоит проработать тему VIRTUALENV??? Где-то я это понятие встречал, но оно не привлекло мое внимание :(
Офлайн