# The PyQt4 Build System

New in version 4.10.

SIP v5 will not include an extensible build system, i.e it will not provide an equivalent of SIP v4’s `sipconfig` module. Consequently a version of PyQt built with SIP v5 will not provide an equivalent of the `pyqtconfig` module. However there is still a need for certain information to be shared between PyQt and other modules (such as QScintilla’s `Qsci` module) that are built on top of it. Specifically it is important that the same `-t` and `-x` command line flags are passed to the `sip` executable to create, for example, the QScintilla bindings as were passed to create the PyQt bindings.

Starting with v4.10, `PyQt4.QtCore.PYQT_CONFIGURATION` is a dict that describes how PyQt was configured. At the moment it contains a single value called `sip_flags` which is a string containing the appropriate `-t` and `-x` flags.

## The Old Build System

Deprecated since version 4.10.

The old PyQt4 build system is an extension of the SIP v4 build system and is implemented by the `pyqtconfig` module. It can be used by configuration scripts of other bindings that build on top of PyQt4 and takes care of the details of the Qt installation.

Note that the `pyqtconfig` module is only created if you use configure.py and not if you use configure-ng.py.

class `PyQt4.pyqtconfig.``Configuration`(sub_cfg=None)

  This class encapsulates configuration values that can be accessed as instance objects. It is derived from `sipconfig.Configuration`.

  Parameters: | sub_cfg – an optional list of sub-class configurations. It should only be used by the `__init__()` method of a sub-class to append its own dictionary of configuration values before passing the list to its super-class.

  `pyqt_bin_dir`

    The name of the directory where the PyQt4 utilities are installed.

  `pyqt_config_args`

    The command line passed to configure.py when PyQt4 was configured.

  `pyqt_mod_dir`

    The name of the directory where the `PyQt4` Python package is installed.

  `pyqt_modules`

    A space separated string of installed PyQt4 modules. The `Qt` module is not included.

  `pyqt_sip_dir`

    The name of the base directory where PyQt4’s `.sip` files are installed. Each module’s `.sip` files are installed in a sub-directory with the same name as the module.

  `pyqt_sip_flags`

    A space separated string of the sip command line options used to build the PyQt4 modules. These should also be used when building bindings that `%Import` any PyQt4 modules.

  `pyqt_version`

    The PyQt4 version as a 3 part hexadecimal number (e.g. v4.0.1 is represented as `0x040001`).

  `pyqt_version_str`

    The PyQt4 version as a string. For development previews it will start with `preview-` or `snapshot-`.

  `qt_data_dir`

    The value of `QLibraryInfo::location(DataPath)` for the Qt installation.

  `qt_archdata_dir`

    When building against Qt v5 this is the value of `QLibraryInfo::location(ArchDataPath)`. When building against Qt v4 it is the value of `QLibraryInfo::location(DataPath)`.

  `qt_dir`

    The root directory of the Qt installation (normally the directory that contains the `bin` directory).

  `qt_edition`

    The Qt edition.

  `qt_framework`

    Set if Qt is built as a MacOS/X framework.

  `qt_inc_dir`

    The value of `QLibraryInfo::location(HeadersPath)` for the Qt installation.

  `qt_lib_dir`

    The value of `QLibraryInfo::location(LibrariesPath)` for the Qt installation.

  `qt_threaded`

    Set if Qt is built with thread support (always set for PyQt4).

  `qt_version`

    The Qt version as a 3 part hexadecimal number (e.g. v4.1.2 is represented as `0x040102`).

  `qt_winconfig`

    Additional Windows specific configuration.

class `PyQt4.pyqtconfig.``QtAssistantModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtAssistant` module.

class `PyQt4.pyqtconfig.``QAxContainerModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QAxContainer` module.

class `PyQt4.pyqtconfig.``QtCoreModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtCore` module.

class `PyQt4.pyqtconfig.``QtDBusModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtDBus` module.

class `PyQt4.pyqtconfig.``QtDeclarativeModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtDeclarative` module.

class `PyQt4.pyqtconfig.``QtDesignerModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtDesigner` module.

class `PyQt4.pyqtconfig.``QtGuiModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtGui` module.

class `PyQt4.pyqtconfig.``QtHelpModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtHelp` module.

class `PyQt4.pyqtconfig.``QtMultimediaModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtMultimedia` module.

class `PyQt4.pyqtconfig.``QtNetworkModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtNetwork` module.

class `PyQt4.pyqtconfig.``QtOpenGLModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtOpenGL` module.

class `PyQt4.pyqtconfig.``QtScriptModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtScript` module.

class `PyQt4.pyqtconfig.``QtScriptToolsModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtScriptTools` module.

class `PyQt4.pyqtconfig.``QtSqlModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtSql` module.

class `PyQt4.pyqtconfig.``QtSvgModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtSvg` module.

class `PyQt4.pyqtconfig.``QtTestModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtTest` module.

class `PyQt4.pyqtconfig.``QtWebKitModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtWebKit` module.

class `PyQt4.pyqtconfig.``QtXmlModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtXml` module.

class `PyQt4.pyqtconfig.``QtXmlPatternsModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `QtXmlPatterns` module.

class `PyQt4.pyqtconfig.``phononModuleMakefile`

  This class encapsulates a Makefile to build a SIP generated Python extension module that is built on the PyQt4 `phonon` module.