Difference between revisions of "Using Python on Linux"

From Apache OpenOffice Wiki
Jump to: navigation, search
Line 66: Line 66:
  
  
[[Category:Python]]
+
[[Category:Python]][[Category:Python]][[Category:Documentation]]

Revision as of 14:32, 28 March 2010

Python is included on all major Linux distributions. However, this is what is referred to as a System Python and might not relate with the OpenOffice.org Python. The OOoPython is the one we need to know how to install and learn where it is. The location will vary depending on if you installed OOo from the OpenOffice.org Site or if it's coming from the distribution repository. This document will try to help you in identifying which OpenOffice.org Python is used within your setup.

OpenOffice.org on Internet

OpenOffice.org installation from the OpenOffice.org website is usually the most common way to get the latest version of OOo, as distributions are not always quick to release the most recent version of the projects. OOo doesn't require many dependencies which makes it easy to install on any Linux system; however, guidance for the OOo installation process can be found elsewhere. The focus here will be on how to locate and manage our OOo Python environment.

The location for Python within OpenOffice.org from this type of installation is:

  /opt/openoffice.org2/program/python-core-2.3.4/

This implementation also includes some interesting Python scripts such as:

  • python.bin
  • pythonloader.py and pyc
  • uno.py and pyc
  • unohelper.py and pyc
  • mailmerge.py
  • officehelper

We won't go over each script included, but it is important to acknowledge for a more in-depth study of the bridge.

OpenOffice.org on Debian

The Debian version of OpenOffice.org usually installs OOo under

   /usr/lib/openoffice/

The Debian OOo is built "--with-system-python", which means OOo Python is identical to your System Python.

[build log for debian stable (etch) available from http://buildd.debian.org/fetch.cgi?&pkg=openoffice.org&ver=2.0.4.dfsg.2-5etch2&arch=i386&stamp=1180841081&file=log]

OpenOffice.org on Fedora Core

Fedora installs OpenOffice.org under:

   /usr/lib/openoffice.org/

The latest Fedora Core (release 8) ships with OpenOffice.org 2.3.0 as of this writing.

Fedora basic installs don't provide OO.org Python support unless you specifically select the package for installation. Nonetheless, you could easily install it later by using yum from a terminal, or pup if you're more familiar with Gnome tools. The package name is: openoffice.org-pyuno.

All Python scripts will be installed under the program folder.

Fedora Core's PyUNO package doesn't install a Python runtime environment, because the official up-to-date Python distribution always gets installed, and you could use that version instead. You will have to set the PYTHONPATH environment variable to use Python outside of OO.org; if you don't, the python executable will not be able to locate the pyuno libraries. From a terminal type: [bash] export PYTHONPATH="/usr/lib/openoffice.org/program" before invoking python.

OpenOffice.org on Ubuntu

Ubuntu installs OpenOffice.org under:

   /usr/lib/openoffice/ 

Ubuntu 6.06, 'Dapper', installs OpenOffice.org Python package openoffice-uno by default.

The Ubuntu OOo is built "--with-system-python", which means OOo Python is identical to your System Python (This applies to the most recent stable version at the time of writing, which was 'Feisty').

All Python scripts will be installed under the program folder.

You will have to set the PYTHONPATH environment variable to use Python outside of OO.org; if you don't, the python executable will not find the pyuno libraries. From a terminal type: [bash] export PYTHONPATH="/usr/lib/openoffice.org/program" before invoking python.

[Build log for i386 available from http://launchpadlibrarian.net/7260728/buildlog_ubuntu-feisty-i386.openoffice.org_2.2.0-1ubuntu3_FULLYBUILT.txt.gz]

Note: attempting to make use of UNO in a Python script fails until the following is done:

                 sudo ldconfig -v /usr/lib/openoffice/program
Personal tools