Windows Environment

Installing Python
The recommended version of Python is version 3.4 for OpenLP 2.1+.

At the time of this writting (pre-2.2) OpenLP is only distribute in a 32-bit build, but it is possible to run OpenLP on a 64-bit setup. The only package unavailable is pyenchant which is used for spellchecking and is optional. If you chose to do a 64-bit install always get the 64-bit (amd64 or x64) build of the various downloads.

Download and install the Python Windows Installer from Python download page.

Installing Python Extensions for Windows
For automating PowerPoint or packaging OpenLP into .exe file, the Python Extensions for Windows will be required: Pywin32 SourceForge download page

Get the version corresponding to the Python version installed. Search for an exe, rather than the zip file it may default to.

For Python 3.4 it is *.win32-py3.4.exe.

Installing PyQt4
The recommended version of PyQt4 is version 4.8+.

Download the binary package from the link at the bottom of the PyQt4 download page. This includes Qt4.

For Python 3.4 the exe file name looks like PyQt4-4.11.4-gpl-Py3.4-Qt4.8.7-x32.exe.

Installing additional packages
To install a Python package just type command like:

c:\Python34\scripts\pip.exe install PACKAGE_NAME

For OpenLP 2.1+/Python 3.4 run:

pip install alembic chardet beautifulsoup4 Mako nose mock pyodbc mysql-connector-python

Optionally install mysql-connector:

pip install mysql-connector-python --allow-external mysql-connector-python

The following packages are not available for Python 3.4 via pip but are provided by Christoph Gohlke. You need to download and install them one by one.
 * lxml
 * psycopg2 (Optional - PostgreSQL support)
 * PyICU
 * SQLAlchemy

Verify Installation
Once you have completed this, check the install is successful by launching python script in a command prompt:

C:\python34\python OPENLP_SRC\scripts\check_dependencies.py

The output should be similar to the following:

Checking Python version... Python >= 3.0 ... 3.4.3.final.0 Checking for modules... PyQt4 ... OK PyQt4.QtCore ... OK PyQt4.QtGui ... OK PyQt4.QtNetwork ... OK PyQt4.QtOpenGL ... OK PyQt4.QtSvg ... OK PyQt4.QtTest ... OK PyQt4.QtWebKit ... OK PyQt4.phonon ... OK sqlalchemy ... OK alembic ... OK sqlite3 ... OK lxml ... OK chardet ... OK enchant ... FAIL bs4 ... OK mako ... OK uno ... FAIL Checking for optional modules... mysql.connector (MySQL support)... OK psycopg2 (PostgreSQL support)... OK nose (testing framework)... OK jenkins (access jenkins api - package name: jenkins-webapi)... FAIL Checking for Windows specific modules... win32com ... OK win32ui ... OK pywintypes ... OK pyodbc ... OK icu ... OK Verifying version of modules... PyQt4 >= 4.6 ... 4.11.4 Qt4 >= 4.6 ... 4.8.7 sqlalchemy >= 0.5 ... 1.0.6 enchant >= 1.6 ... FAIL Qt4 image formats... read: bmp, pbm, pgm, png, ppm, xbm, xpm write: bmp, png, ppm, xbm, xpm Enchant (spell checker)... FAIL