6.51. Python-3.6.4

The Python 3 package contains the Python development environment. It is useful for object-oriented programming, writing scripts, prototyping large programs or developing entire applications.

Approximate build time: 1.2 SBU
Required disk space: 354 MB

6.51.1. Installation of Python 3

Prepare Python for compilation:

./configure --prefix=/usr       \
            --enable-shared     \
            --with-system-expat \
            --with-system-ffi   \

The meaning of the configure options:


This switch enables linking against system version of Expat.


This switch enables linking against system version of libffi.


This switch enables building pip and setuptools packaging programs.

Compile the package:


The test suite requires TK and and X Windows session and cannot be run until Python 3 is reinstalled in BLFS.

Install the package:

make install
chmod -v 755 /usr/lib/libpython3.6m.so
chmod -v 755 /usr/lib/libpython3.so

The meaning of the install commands:

chmod -v 755 /usr/lib/libpython3.{6m.,}so

Fix permissions for libraries to be consistent with other libraries.

If desired, install the preformatted documentation:

install -v -dm755 /usr/share/doc/python-3.6.4/html 

tar --strip-components=1  \
    --no-same-owner       \
    --no-same-permissions \
    -C /usr/share/doc/python-3.6.4/html \
    -xvf ../python-3.6.4-docs-html.tar.bz2

The meaning of the documentation install commands:

--no-same-owner and --no-same-permissions

Ensure the installed files have the correct ownership and prermissions. Without these options, using tar will install the package files with the upstream creator's values.

6.51.2. Contents of Python 3

Installed Programs: 2to3, idle3, pydoc3, python3, python3-config, pyvenv
Installed Library: libpython3.6m.so and libpython3.so
Installed Directories: /usr/include/python3.6m, /usr/lib/python3 and /usr/share/doc/python-3.6.4

Short Descriptions


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


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.


is the Python documentation tool.


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


creates virtual Python environments in one or more target directories.