У меня есть клиент, использующий SUSE Enterprise Server 11, на котором я хочу использовать проект django с мостом OpenOffice-Python-Bridge под названием PyUNO
. Он запускает apache2 с mod_wsgi
и не имеет virtualenv или чего-то подобного.
Я добавил соответствующий путь в PYTHONPATH, но когда я запускаю оболочку python manage.py shell
и пробую import uno
, я получаю эту ошибку:
dynamic module not initialized properly
Это OpenOffice 3.4, python 2.6.x (оба с SUSE-DVD).
Google привел меня к системной переменной LD_LIBRARY_PATH
, но как только я ее установил, я больше не могу запустить оболочку, потому что python больше не может найти django (PYTHONPATH, похоже, как-то сломан). Если я запускаю ldconfig -v /path/to/openoffice/program/
, что является еще одним распространенным предложением, результат будет таким же.
Выполнив одно из вышеперечисленных действий, я могу запустить общесистемный python и импортировать uno. Но я больше не могу запускать django-shell, потому что django не найден.
Если я сбрасываю LD_LIBRARY_PATH (через unset LD_LIBRARY_PATH
или ldconfig
), я попадаю в «старую» ситуацию.
OpenOffice поставляется в комплекте с двоичным файлом python. Этот может импортировать uno без ошибки.
Результат: я подумал об использовании другого файла uno.py или как-то указать apache2 использовать версию python, поставляемую с openoffice. Как я могу сделать что-то подобное или добавить соответствующие pyuno-зависимости в версию python, используемую apache? Или какая версия openoffice/pyuno может решить мою проблему? Я бы не хотел касаться mod_wsgi и python из исходников SUSE.
Также могут быть полезны некоторые подсказки о LD_LIBRARY_PATH.
LD_LIBRARY_PATH
вместоLD_CONFIG_PATH
? - person Aya   schedule 25.06.2013LD_LIBRARY_PATH
не установлен, то простая установкаLD_LIBRARY_PATH
не должна приводить к сбою и не должна влиять наPYTHONPATH
. Какое точное сообщение об ошибке вы получаете при запуске оболочки django? - person Aya   schedule 25.06.2013