How to get the list of options that Python was compiled with?

compilation, package, python

Solution

There is a module to see the system config

import sysconfig
print(sysconfig.get_config_vars())

It offers an interface to get individual variables as well.

sysconfig.get_config_var('HAVE_LIBREADLINE')

It is also accessible via shell:

python3 -m sysconfig | less

Edit:

before python2.7, you have to use

import distutils.sysconfig
print distutils.sysconfig.get_config_vars()

Problem

You can compile Python in various ways. I'd like to find out with which options my Python was compiled. Concrete use-case: was my Python compiled with readline? I know I can see this by doing "import readline", but I'd like to see a list of compilation setting for my Python binary. Edit: I mean the Python executable and not source code written by myself.

Original source