Найти - Пользователи
Полная версия: Почему нет модуля uno?
Начало » Python для экспертов » Почему нет модуля uno?
1 2 3
OlDer
Все ники заняты
Однако, помещение пути /usr/lib/ooo-2.0/program в переменную PYTHONPATH ничего не изменило.
Как это, не изменило? У меня вот так работает:
older@opensuse102:~> PYTHONPATH=%PYTHONPATH%:/usr/lib/ooo-2.0/program python
j2a
Ага. Ответ на исходный вопрос “Почему нет модуля uno” таков: потому что кураторы OOo в SuSe забыли положить его в PYTHONPATH.

P.S. Я не удивлюсь, если окажется что и /usr/local/lib/pythonX.Y/site-packages тоже не в PYTHONPATH.
balu
j2a
С OOo, AFAIK, “своя” версия Python не идет.
Под мастдай идет, тут прав bialix, а вот с линухами, как вы и описали.
Все ники заняты
Извиняюсь, но я новичок не только в Python, но и в Linux. Поэтому прошу разъяснить, как правильно затолкать путь к UNO в PYTHONPATH.
Эта переменная у меня пуста, т.е. echo $PYTHONPATH выдаёт пустую строку. Пишу команду: PYTHONPATH=/usr/lib/ooo-2.0/program. Теперь echo $PYTHONPATH выдаёт указанный путь. Тут же (в этой же сессии командного интерпретатора) запускаю интерактивно Python, пишу import uno, получаю тот же кукиш - “No module named uno”.
slivlen
Надо задавать PYTHONPATH так:
$export PYTHONPATH=/usr/lib/ooo-2.0/program
$python
или так:
$PYTHONPATH=/usr/lib/ooo-2.0/program python
P.S. $ - приглашение шелла.
Все ники заняты
slivlen, спасибо. Сразу вопрос вдогонку: в какой файл (сценарий оболочки) надо загнать присвоение PYTHONPATH, чтобы не задавать её таким способом каждый раз?
slivlen
Пропиши в .bash_profile в домашней директории. И экспортировать не забудь :)
OlDer
Все ники заняты
slivlen, спасибо. Сразу вопрос вдогонку: в какой файл (сценарий оболочки) надо загнать присвоение PYTHONPATH, чтобы не задавать её таким способом каждый раз?
Это, конечно, зависит от ситуации, но обычно это удобнее делать прямо в своем скрипте, тогда он будет работать независимо от того, устанавливается ли PYTHONPATH в профиле пользователя:
http://python.org/doc/2.3.5/tut/node8.html#standardModules
OlDer
j2a
Ага. Ответ на исходный вопрос “Почему нет модуля uno” таков: потому что кураторы OOo в SuSe забыли положить его в PYTHONPATH.
Может и не зря, т.к. OOo - только 32-битный. И на моем opensuse 10.2 x86_64 uno работать не будет даже если его положить в PYTHONPATH
j2a
P.S. Я не удивлюсь, если окажется что и /usr/local/lib/pythonX.Y/site-packages тоже не в PYTHONPATH.
Не окажется ;-) Мало того - именно туда устанавливаются пакеты, не входящие в дистрибутив, а не в /usr/lib/python2.5/site-packages
slivlen
OlDer
Может и не зря, т.к. OOo - только 32-битный. И на моем opensuse 10.2 x86_64 uno работать не будет даже если его положить в PYTHONPATH
Почему? Как правило на 86х64 32 разрядные приложения работают без проблем. Для их поддержки собираются 2 версии системных библиотек - 64(в /lib64) и 32 разрядные(в /lib).
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB