├── sip ├── python27_32_msvc2013_32_build.bat └── python27_64_msvc2013_64_build.bat ├── test └── test.py ├── PyQt5 ├── python27_32_msvc2013_32_build.bat └── python27_64_msvc2013_64_build.bat ├── QScintilla ├── python27_32_msvc2013_32_build.bat └── python27_64_msvc2013_64_build.bat └── README.md /sip/python27_32_msvc2013_32_build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" 3 | set QMAKESPEC=C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\mkspecs\win32-msvc2013 4 | C:\Python27\python.exe configure.py 5 | nmake 6 | nmake install -------------------------------------------------------------------------------- /test/test.py: -------------------------------------------------------------------------------- 1 | import PyQt5 2 | from PyQt5 import QtCore 3 | from PyQt5 import QtGui 4 | from PyQt5 import Qsci 5 | from PyQt5 import QtWidgets 6 | from PyQt5.QtWidgets import QApplication 7 | 8 | if __name__ == '__main__': 9 | print 'Everything appears to be working!' -------------------------------------------------------------------------------- /sip/python27_64_msvc2013_64_build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 3 | set QMAKESPEC=C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\mkspecs\win32-msvc2013 4 | C:\Python27-64\python.exe configure.py 5 | nmake 6 | nmake install -------------------------------------------------------------------------------- /PyQt5/python27_32_msvc2013_32_build.bat: -------------------------------------------------------------------------------- 1 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" 2 | set QMAKESPEC=C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\mkspecs\win32-msvc2013 3 | C:\Python27\python.exe configure.py --verbose --confirm-license --spec=win32-msvc2013 --disable=QtNfc --qmake=C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin\qmake.exe -a --qsci-api --target-py-version=2.7 4 | nmake 5 | nmake install -------------------------------------------------------------------------------- /PyQt5/python27_64_msvc2013_64_build.bat: -------------------------------------------------------------------------------- 1 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 2 | set QMAKESPEC=C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\mkspecs\win32-msvc2013 3 | C:\Python27-64\python.exe configure.py --verbose --confirm-license --spec=win32-msvc2013 --disable=QtNfc --qmake=C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin\qmake.exe -a --qsci-api --target-py-version=2.7 4 | nmake 5 | nmake install -------------------------------------------------------------------------------- /QScintilla/python27_32_msvc2013_32_build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" 3 | set QMAKESPEC=C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\mkspecs\win32-msvc2013 4 | cd Qt4Qt5 5 | "C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin\qmake.exe" qscintilla.pro 6 | nmake 7 | nmake install 8 | cd ..\designer-Qt4Qt5 9 | "C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin\qmake.exe" designer.pro 10 | nmake 11 | nmake install 12 | cd ..\Python 13 | C:\Python27\python.exe configure.py --spec=win32-msvc2013 --pyqt=PyQt5 --qmake=C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin\qmake.exe 14 | nmake 15 | nmake install 16 | cd .. -------------------------------------------------------------------------------- /QScintilla/python27_64_msvc2013_64_build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 3 | set QMAKESPEC=C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\mkspecs\win32-msvc2013 4 | cd Qt4Qt5 5 | "C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin\qmake.exe" qscintilla.pro 6 | nmake 7 | nmake install 8 | cd ..\designer-Qt4Qt5 9 | "C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin\qmake.exe" designer.pro 10 | nmake 11 | nmake install 12 | cd ..\Python 13 | C:\Python27-64\python.exe configure.py --spec=win32-msvc2013 --pyqt=PyQt5 --qmake=C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin\qmake.exe 14 | nmake 15 | nmake install 16 | cd .. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PyQt5 2 | 3 | Compile scripts for PyQt5 (Qt 5.6.0), Python 2.7.11 and MSVC 2013. To be used by [x64dbg](http://x64dbg.com). Based on [Ida_Pro_Ultimate_Qt_Build_Guide](https://github.com/techbliss/Ida_Pro_Ultimate_Qt_Build_Guide) by Storm Shadow. 4 | 5 | When it says *Extract* make sure to completely remove the previous directory if present. 6 | 7 | ## Prerequisites 8 | 9 | 1. Install VS2013 so you have `C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat` 10 | 2. Install Qt 5.6.0 (x86) so you have `C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin\qmake.exe` 11 | 3. Install Qt 5.6.0 (x64) so you have `C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin\qmake.exe` 12 | 4. Install Python 2.7.11 (x86) so you have `C:\Python27\python.exe` 13 | 5. Install Python 2.7.11 (x64) so you have `C:\Python27-64\python.exe` 14 | 15 | ## x86 16 | 17 | ### Building sip (x86) 18 | 19 | 1. Extract `sip-4.18.zip` so you have `C:\sip-4.18\configure.py` 20 | 2. Copy `sip\python27_32_msvc2013_32_build.bat` to `C:\sip-4.18\python27_32_msvc2013_32_build.bat` 21 | 3. Run `C:\sip-4.18\python27_32_msvc2013_32_build.bat` 22 | 4. You should now have `C:\Python27\sip.exe` 23 | 24 | ### Building PyQt5 (x86) 25 | 26 | 1. Extract `PyQt5_gpl-5.6.zip` so you have `C:\PyQt5_gpl-5.6\configure.py` 27 | 2. Copy `PyQt5\python27_32_msvc2013_32_build.bat` to `C:\PyQt5_gpl-5.6\python27_32_msvc2013_32_build.bat` 28 | 3. Run `C:\PyQt5_gpl-5.6\python27_32_msvc2013_32_build.bat` 29 | 30 | ### Copying Qt DLLs (x86) 31 | 32 | 1. Copy all DLL files in `C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\bin` to `C:\Python27\Lib\site-packages\PyQt5` 33 | 2. Copy all DLL files in `C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\plugins\platforms` to `C:\Python27\Lib\site-packages\PyQt5\platforms` 34 | 3. Verify by opening `C:\Python27\python.exe` and typing `import PyQt5.QtCore` it should not error 35 | 36 | ### Building QScintilla (x86) 37 | 38 | 1. Extract `QScintilla_gpl-2.9.2.zip` so you have `C:\QScintilla_gpl-2.9.2\README` 39 | 2. Copy `QScintilla\python27_32_msvc2013_32_build.bat` to `C:\QScintilla_gpl-2.9.2\python27_32_msvc2013_32_build.bat` 40 | 3. Run `C:\QScintilla_gpl-2.9.2\python27_32_msvc2013_32_build.bat` 41 | 4. You should now have `C:\Qt\qt-5.6.0-x86-msvc2013\5.6\msvc2013\lib\qscintilla2.dll` 42 | 5. Copy `C:\QScintilla_gpl-2.9.2\Qt4Qt5\release\qscintilla2.dll` to `c:\Python27\Lib\site-packages\PyQt5` 43 | 44 | ### Verifying your installation (x86) 45 | 46 | 1. Run `C:\Python27\python.exe test\test.py` 47 | 2. It should say `Everything appears to be working!` 48 | 49 | ## x64 50 | 51 | ### Building sip (x64) 52 | 53 | 1. Extract `sip-4.18.zip` so you have `C:\sip-4.18\configure.py` 54 | 2. Copy `sip\python27_64_msvc2013_64_build.bat` to `C:\sip-4.18\python27_64_msvc2013_64_build.bat` 55 | 3. Run `C:\sip-4.18\python27_64_msvc2013_64_build.bat` 56 | 4. You should now have `C:\Python27-64\sip.exe` 57 | 58 | ### Building PyQt5 (x64) 59 | 60 | 1. Extract `PyQt5_gpl-5.6.zip` so you have `C:\PyQt5_gpl-5.6\configure.py` 61 | 2. Copy `PyQt5\python27_64_msvc2013_64_build.bat` to `C:\PyQt5_gpl-5.6\python27_64_msvc2013_64_build.bat` 62 | 3. Run `C:\PyQt5_gpl-5.6\python27_64_msvc2013_64_build.bat` 63 | 64 | ### Copying Qt DLLs (x64) 65 | 66 | 1. Copy all DLL files in `C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\bin` to `C:\Python27-64\Lib\site-packages\PyQt5` 67 | 2. Copy all DLL files in `C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\plugins\platforms` to `C:\Python27-64\Lib\site-packages\PyQt5\platforms` 68 | 3. Verify by opening `C:\Python27-64\python.exe` and typing `import PyQt5.QtCore` it should not error 69 | 70 | ### Building QScintilla (x64) 71 | 72 | 1. Extract `QScintilla_gpl-2.9.2.zip` so you have `C:\QScintilla_gpl-2.9.2\README` 73 | 2. Copy `QScintilla\python27_64_msvc2013_64_build.bat` to `C:\QScintilla_gpl-2.9.2\python27_64_msvc2013_64_build.bat` 74 | 3. Run `C:\QScintilla_gpl-2.9.2\python27_64_msvc2013_64_build.bat` 75 | 4. You should now have `C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\lib\qscintilla2.dll` 76 | 5. Copy `C:\Qt\qt-5.6.0-x64-msvc2013\5.6\msvc2013_64\lib\qscintilla2.dll` to `c:\Python27-64\Lib\site-packages\PyQt5` 77 | 78 | ### Verifying your installation (x64) 79 | 80 | 1. Run `C:\Python27-64\python.exe test\test.py` 81 | 2. It should say `Everything appears to be working!` --------------------------------------------------------------------------------