Seite 1 von 1

Python uno aus OpenOffice nutzen

Verfasst: Freitag 25. Juli 2008, 14:55
von HansMeiser
Hallo Forum,

unter Suse 10.1 habe ich eine normale Pythoninstallation 2.4.2

Die typischen Pfade sind:

python: /usr/bin/python /usr/bin/python2.4 /usr/lib/python /usr/lib/python2.4 /usr/local/lib/python2.4 /usr/include/python2.4 /usr/include/python /usr/share/man/man1/python.1.gz

Wenn man die RPMs von OpenOffice installiert wird im Paket openoffice.org-pyuno ein Python 2.3.4 mitgeliefert und ein Modul names uno. Dieses kann benutzt werden um per Python auf OpenOffice zu connecten wenn OpenOffice als Dienst auf einem Port lauscht.
Wenn man dieses OpenOffice RPM installiert hat man unter:

/opt/openoffice.org2.4/program

eine Struktur wie:

-r--r--r-- 1 root root 1013K 2008-05-29 18:55 libpython2.3.so.1.0
-r--r--r-- 1 root root 177K 2008-05-29 18:55 libpyuno.so
-r--r--r-- 1 root root 3,6K 2008-05-29 18:55 officehelper.py
lrwxrwxrwx 1 root root 9 2008-07-25 15:48 python -> python.sh
-r-xr-xr-x 1 root root 3,1K 2008-05-29 18:56 python.bin
drwxr-xr-x 3 root root 16 2008-07-25 15:48 python-core-2.3.4
-r--r--r-- 1 root root 6,4K 2008-05-29 18:56 pythonloader.py
-r--r--r-- 1 root root 247 2008-05-29 18:56 pythonloader.unorc
-r--r--r-- 1 root root 17K 2008-05-29 18:56 pythonloader.uno.so
-r--r--r-- 1 root root 30K 2008-05-29 18:56 pythonscript.py
-r-xr-xr-x 1 root root 3,2K 2008-05-29 18:56 python.sh
-r--r--r-- 1 root root 3,6K 2008-05-29 18:56 pyuno.so
-r--r--r-- 1 root root 12K 2008-05-29 18:56 unohelper.py
-r--r--r-- 1 root root 13K 2008-05-29 18:56 uno.py


Das Problem ist nun das ich dieses uno auch für mein normales Python nutzen möchte. Zum einen ist es neuer und 2. habe ich mod_python für dieses StandardPython kompiliert.
Ich sehe leider nicht genau durch was wohin muss. Ich hab paar Files nach /usr/lib/python kopiert aber wenn ich im Testscript ein import uno ausführe bekomme ich Fehler das pyuno nicht gefunden werden kann.

Eh ich hier sinnlos Files kopiere und mir alles zusaue dachte ich frag ich lieber mal. Oder könnte ich die Pfade in /opt/... irgendwie in die Python Suchpfade aufnehmen. Leider kenn ich mich mit Python selber nicht so sehr aus und hoffe das mir jemand einen Tipp geben kann. In einem OO Forum hab ich die Frage auch schon gestellt ist aber offenbar Python relevanter als OO.

Danke
Hans

Verfasst: Freitag 25. Juli 2008, 15:31
von würmchen
ich hoffe ich sag nichts falsches, aber normal sollten die dateien dann in /usr/lib/python2.X/site-packages

Aber lieber nochmal von nem Fachmann bestätigen lassen :-)

Verfasst: Freitag 25. Juli 2008, 16:29
von Leonidas
Hallo HansMeiser, willkommen im Forum,
würmchen hat geschrieben:ich hoffe ich sag nichts falsches, aber normal sollten die dateien dann in /usr/lib/python2.X/site-packages
Das wird nicht gehen, denn man kann mit Python 2.4 nicht auf C-Module (``*.so``) zugreifen, die gegen Python 2.3 gelinkt sind.

Ergo: Du musst UNO mit dem mitgelieferten Python nutzen.

Verfasst: Freitag 25. Juli 2008, 18:31
von HansMeiser
Hallo,

hmm, scheint mir auch so. Ich habe das was von würmchen vorgeschlagen wurde befolgt. Er meckert aber über nicht properly configured module. (Habs grad nicht vor mir). Denke auch das es wegen des Versionsunterschiedes nicht passt.
In meiner Distribution gibts aber leider kein python-uno, muss mal sehen ob ich an die sourcen rankomme und das manuell kompiliere.

Danke soweit
Hans

Verfasst: Montag 28. Juli 2008, 07:58
von mkesper
ab opensuse 10.3 gibt's das zumindest: http://www.novell.com/products/linuxpac ... pyuno.html
10.1 ist sowieso hoffnungslos veraltet...

Verfasst: Dienstag 29. Juli 2008, 07:31
von HansMeiser
hmm, das ist aber aus den standard rpms heraus, für 10.1 kannste ja auch die neuen rpms direkt von OO laden und installieren. im OO-pyuno Paket ist das dann drinne. Ich will direkt mal in den OO Quellen kucken ob was zu finden ist, aber ganz schön unüberschaubar...
Hans