How to install PyQt5 on Windows for Python 2?

pip install python-qt5

Installs unofficial PyQt5 via PyPI for Python 2.7 64-bit on Windows

Github for this here: https://github.com/pyqt/python-qt5


This is a very old question, but had I come across this question with a decent answer a week ago I would have found it very useful. Here's what I did to achieve the desired outcome. As you noted, there aren't supported packages for PyQt5 and Python 2.7 so you will have to build it yourself. Thankfully the process is quite straightforward. By assumption, you already have Python 2.7 installed.

  1. You're going to need a valid installation of MS Visual C++. I have the professional version but I assume that the community version will work too.
  2. You're going to need to have an appropriate version of qt. If you're using 32 bit Python make sure that you get 32 bit Qt. Also, (even though I think that it shouldn't matter), I made sure to get the version of Qt that was built with the same version of the MSVC compiler that I have. This could be important if there is any static linkage between the Qt install and PyQt (which could lead to getting a binary incompatibility of the linked object files.) Get Qt from http://download.qt.io/ Note that Qt has extra considerations around licensing, so you might want to take a look at https://www.qt.io/download/ first.
  3. Make sure that the bin subdirectory of your Qt install is in your system path.
  4. Get the source for SIP. SIP is available from riverbankcomputing.com. I used version 4.18.
  5. There are three commands to build and install SIP. Don't run these commands from a standard shell, use the Visual Studio tools command shell instead, so that your path includes the compiler, and also so that the INCLUDE, LIBS, and LIBPATH environment variables are set.

    python configure.py

    If you're using a virtual environment for Python you might have to modify the makefile for SIPLib since it hard codes dependencies on the location of the Python include subdirectory and the libs subdirectory. I chose to point them at the system Python install (c:\Python27\include and c:\Python27\libs.) It should now be as simple as

    nmake

    nmake install

    The final part of this step is to check that the sip.exe program has been put in a location that is part of your path (this might only be a problem if you're using a virtual Python environment. I copied the program to the scripts directory.)

  6. Get the source for the version of PyQt that corresponds to the version of Qt that you got earlier. It's available from the PyQt project on sourceforge, and the most recent version is available from riverbankcomputing.com.

  7. Repeat the same process of:

    python configure.py

    nmake

    nmake install

    that you used to build SIP. In this case, the number of makefiles that are generated is too large (all potentially with the wrong location of the python27.lib file and the headers, depending on your virtual environment.) I just copied the python27.lib file to the location that the makefiles expect. Similarly, there are three applications that are installed in a location that isn't part of the system path (pyuic5, pyrcc5 and pylupdate5) and I copied these to a location in the path as well.

Done. You should be able to build your PyQt5/Python2.7 application.