Python-2.7.8

Introduction to Python 2

The Python 2 package contains the Python development environment. It is useful for object-oriented programming, writing scripts, prototyping large programs or developing entire applications. This version is for backward compatibility with other dependent packages.

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

Package Information

Additional Downloads

Optional HTML Documentation

Python 2 Dependencies

Recommended

Optional

BlueZ-5.23

Optional (For Additional Modules)

Berkeley DB-6.1.19, OpenSSL-1.0.1i, SQLite-3.8.6 and Tk-8.6.2

[Note]

Note

If you are building Thunderbird-31.1.1 or Firefox-32.0.1 you must install openssl before you build Python 2.

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

Installation of Python 2

Install Python 2 by running the following commands:

./configure --prefix=/usr       \
            --enable-shared     \
            --with-system-expat \
            --with-system-ffi   \
            --enable-unicode=ucs4 &&
make

If you wish to run the test suite, disable a test that fails:

patch -Np1 -i ../Python-2.7.8-skip_test_gdb-1.patch

To test the results, issue: make test.

Now, as the root user:

make install &&
chmod -v 755 /usr/lib/libpython2.7.so.1.0

Since Python 2 is in maintenance mode, and Python 3 is recommended by upstream for development, you probably do not need to install the documentation. However, if you still want to install documentation for both Python versions, be sure to define the PYTHONDOCS variable for the version you want to use, each time you need to consult the documentation. If you have downloaded the preformatted documentation from http://docs.python.org/download.html, install it as the root user:

install -v -dm755 /usr/share/doc/python-2.7.8 &&
tar --strip-components=1 -C /usr/share/doc/python-2.7.8 \
    --no-same-owner -xvf ../python-2.7.8-docs-html.tar.bz2      &&
find /usr/share/doc/python-2.7.8 -type d -exec chmod 0755 {} \; &&
find /usr/share/doc/python-2.7.8 -type f -exec chmod 0644 {} \;

Command Explanations

--with-system-expat: This switch enables linking against system version of Expat.

--with-system-ffi: This switch enables linking against system version of libffi. Remove if you have not installed libffi-3.1.

--enable-unicode=ucs4: This switch enables 32bit Unicode support in Python.

--with-dbmliborder=bdb:gdbm:ndbm: Use this switch if you want to build Python DBM Module against Berkeley DB instead of GDBM.

chmod ...: Fix permissions for libraries to be consistent with other libraries.

Configuring Python 2

In order for python to find the installed documentation, you must add the following environment variable to individual user's or the system's profile:

export PYTHONDOCS=/usr/share/doc/python-2.7.8

Contents

Installed Programs: 2to3, pydoc, python (symlink), python-config (symlink), python2 (symlink), python2-config (symlink), python2.7, python2.7-config, smtpd.py, and idle
Installed Library: libpython2.7.so and several under /usr/lib/python2.7/{config,lib-dynload}
Installed Directories: /usr/include/python2.7, /usr/lib/python2.7, and /usr/share/doc/python-2.7.8

Short Descriptions

2to3

is a Python program that reads Python 2.x source code and applies a series of fixers to transform it into valid Python 3.x code.

idle

is a wrapper script that opens a Python aware GUI editor. For this script to run, you must have installed Tk before Python so that the Tkinter Python module is built.

pydoc

is the Python documentation tool.

python

is an interpreted, interactive, object-oriented programming language.

python2.7

is a version-specific name for the python program.

smtpd.py

is an SMTP proxy implemented in Python.

Last updated on 2014-09-09 12:00:35 -0700