Python Modules

Introduction to Python Modules

The Python module packages add useful objects to the Python language. Modules utilized by packages throughout BLFS are listed here, along with their dependencies. Installation of the modules shown on this page is meant to follow from top to bottom to handle optional dependencies in each module.

D-Bus Python

Introduction to D-Bus Python Module

D-Bus Python provides Python bindings to the D-Bus.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

D-Bus Python Dependencies

Required

dbus-glib-0.102 and Python-2.7.8 and/or Python-3.4.1

Optional (Required to build the API and HTML Documentation)

Epydoc and Docutils

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/dbus-python

Installation of D-Bus Python

[Note]

Note

Both Python 2 and Python 3 modules can be built and installed without any conflicts.

To build D-Bus Python as the Python 2 module, run the following commands:

mkdir python2 &&
pushd python2 &&
PYTHON=/usr/bin/python     \
../configure --prefix=/usr --docdir=/usr/share/doc/dbus-python-1.2.0 &&
make &&
popd

To test the results, issue: make -C python2 check.

To build D-Bus Python as the Python 3 module, run the following commands:

mkdir python3 &&
pushd python3 &&
PYTHON=/usr/bin/python3    \
../configure --prefix=/usr --docdir=/usr/share/doc/dbus-python-1.2.0 &&
make &&
popd

To test the results, issue: make -C python3 check.

To install the Python 2 module, run the following command as the root user:

make -C python2 install

To install the Python 3 module, run the following command as the root user:

make -C python3 install

Contents

Installed Programs: None
Installed Libraries: None
Installed Directories: /usr/share/doc/dbus-python-1.2.0 and /usr/lib/python2.7/site-packages/dbus and/or /usr/lib/python3.4/site-packages/dbus

Py2cairo-1.10.0

Introduction to Py2cairo Module

Py2cairo provides Python 2 bindings to Cairo.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

Py2cairo Dependencies

Required

Python-2.7.8 and Cairo-1.12.16

Optional

pytest

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/py2cairo

Installation of Py2cairo

Install Py2cairo by running the following commands:

./waf configure --prefix=/usr &&
./waf build

The test suite must be run after the package is installed.

Now, as the root user:

./waf install

The test suite requires the optional pytest package. If installed, it is run by changing to the test directory and running py.test as an unprivileged user.

Contents

Installed Programs: None
Installed Library: _cairo.so
Installed Directory: /usr/include/pycairo and /usr/lib/python2.7/site-packages/cairo

PyCairo-1.10.0

Introduction to PyCairo Module

PyCairo provides Python 3 bindings to Cairo.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

Additional Downloads

PyCairo Dependencies

Required

Cairo-1.12.16 and Python-3.4.1

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pycairo

Installation of PyCairo

Install PyCairo by running the following commands:

patch -Np1 -i ../pycairo-1.10.0-waf_unpack-1.patch     &&
wafdir=$(./waf unpack) &&
pushd $wafdir          &&
patch -Np1 -i ../../pycairo-1.10.0-waf_python_3_4-1.patch &&
popd                   &&
unset wafdir           &&
PYTHON=/usr/bin/python3 ./waf configure --prefix=/usr  &&
./waf build

This package does not come with a test suite.

Now, as the root user:

./waf install

Contents

Installed Programs: None
Installed Library: None
Installed Directory: /usr/include/pycairo and /usr/lib/python3.4/site-packages/cairo

PyGObject-2.28.6

Introduction to PyGObject Module

PyGObject-2.28.6 provides Python 2 bindings to the GObject class from GLib.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

Additional Downloads

PyGObject Dependencies

Required

GLib-2.40.0 and Py2cairo-1.10.0

Optional

gobject-introspection-1.40.0 and libxslt-1.1.28 (to Build Documentation)

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pygobject2

Installation of PyGObject

Install PyGObject by running the following commands:

patch -Np1 -i ../pygobject-2.28.6-fixes-1.patch   &&
./configure --prefix=/usr --disable-introspection &&
make

This package does not have a working testsuite.

Now, as the root user:

make install

Command Explanations

--disable-introspection: Omit this switch if you have installed gobject-introspection-1.40.0. Note that it conflicts with PyGObject-3.12.2.

--disable-docs: This option disables the rebuilding of the html documentation if libxslt-1.1.28 is installed.

Contents

Installed Programs: pygobject-codegen-2.0
Installed Libraries: libpyglib-2.0-python.so, _gio.so, unix.so, _glib.so and _gobject.so.
Installed Directories: /usr/include/pygtk-2.0, /usr/lib/python2.7/site-packages/gtk-2.0/{gio,glib,gobject}, /usr/share/gtk-doc/html/pygobject and /usr/share/pygobject/2.0

PyGObject-3.12.2

Introduction to PyGObject3 Module

PyGObject3 provides Python bindings to the GObject class from GLib.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

PyGObject3 Dependencies

Required

gobject-introspection-1.40.0 and Py2cairo-1.10.0 (for Python 2 bindings) and/or PyCairo-1.10.0 (for Python 3 bindings)

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pygobject3

Installation of PyGObject3

[Note]

Note

Both Python 2 and Python 3 modules can be built and installed without any conflicts.

If you wish to run the test suite, optionally use the following command so that one test is marked as "expected failure":

sed -i '/test_out_glist/ i\    @unittest.expectedFailure' \
       tests/test_atoms.py

To build PyGObject3 as the Python 2 module, run the following commands:

mkdir python2 &&
pushd python2 &&
../configure --prefix=/usr --with-python=/usr/bin/python &&
make &&
popd

To test the results, issue: make -C python2 check. An already active graphical session with bus address is necessary to run the tests.

To build PyGObject3 as the Python 3 module, run the following commands:

mkdir python3 &&
pushd python3 &&
../configure --prefix=/usr --with-python=/usr/bin/python3 &&
make &&
popd

To test the results, issue: make -C python3 -k check. An already active graphical session with bus address is necessary to run the tests. Some tests fail for unknown reasons.

To install the Python 2 module, run the following command as the root user:

make -C python2 install

To install the Python 3 module, run the following command as the root user:

make -C python3 install

Contents

Installed Programs: None
Installed Library: /usr/lib/python2.7/site-packages/gi/{_gi.so,_gi_cairo.so} and/or /usr/lib/python3.4/site-packages/gi/{_gi_cairo.cpython-34m.so,_gi.cpython-34m.so}
Installed Directories: /usr/include/pygobject-3.0 and /usr/lib/python2.7/site-packages/{gi,pygtkcompat} and/or /usr/lib/python3.4/site-packages/{gi,pygtkcompat}

PyGTK-2.24.0

Introduction to PyGTK Module

PyGTK lets you to easily create programs with a graphical user interface using the Python programming language.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

PyGTK Dependencies

Required

PyGObject-2.28.6

Required (atk module)

ATK-2.12.0

Required (pango module)

Pango-1.36.7

Required (pangocairo module)

Py2cairo-1.10.0 and Pango-1.36.7

Required (gtk and gtk.unixprint modules)

Py2cairo-1.10.0 and GTK+-2.24.24.

Required (gtk.glade module)

Py2cairo-1.10.0 and libglade-2.6.4.

Optional

NumPy

Optional (to Build Documentation)

libxslt-1.1.28

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pygtk

Installation of PyGTK

Install PyGTK by running the following commands:

./configure --prefix=/usr &&
make

The tests must be run from an active X display. If this is so, issue: make check.

Now, as the root user:

make install

Command Explanations

--enable-docs: This option enables rebuilding the html documentation if libxslt-1.1.28 is installed.

Contents

Installed Programs: pygtk-codegen-2.0 and pygtk-demo.
Installed Libraries: atk.so, _gtk.so, glade.so, gtkunixprint.so, pango.so and pangocairo.so.
Installed Directories: /usr/include/pygtk-2.0, /usr/lib/pygtk, /usr/lib/python2.7/site-packages/gtk-2.0, /usr/share/gtk-doc/html/pygtk and /usr/share/pygtk.

Short Descriptions

pygtk-codegen-2.0

is a wrapper script to run the PyGTK codegen module.

pygtk-demo

is a Python wrapper to run the PyGTK demo program.

PyXDG-0.25

Introduction to PyXDG Module

PyXDG is a Python library to access freedesktop.org standards.

This package is known to build and work properly using an LFS-7.6 platform.

Package Information

PyXDG Dependencies

Required

Python-2.7.8 and/or Python-3.4.1

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/pyxdg

Installation of PyXDG

[Note]

Note

Both Python 2 and Python 3 modules can be built and installed without any conflicts.

To install the Python 2 module, run the following command as the root user:

python setup.py install --optimize=1

To install the Python 3 module, run the following command as the root user:

python3 setup.py install --optimize=1

Contents

Installed Directory: /usr/lib/python2.7/site-packages/xdg and/or /usr/lib/python3.4/site-packages/xdg

Last updated on 2014-03-28 03:10:16 -0700