Qt for Python/GettingStarted/Windows: Difference between revisions
(Created page with "(Page under development) The Qt library has to be built with the same version of MSVC as Python and PySide2....") |
(Adding building from source) |
||
Line 1: | Line 1: | ||
The Qt library has to be built with the same version of MSVC as Python and PySide2, this can be selected when using the online installer. | |||
The Qt library has to be built with the same version of MSVC as Python and PySide2. | |||
==== Requirements ==== | ==== Requirements ==== | ||
* Qt package from https://www.qt.io or a custom build of Qt (preferably '''Qt 5.9 | * Qt package from https://www.qt.io or a custom build of Qt (preferably '''Qt 5.9''') | ||
* Python from https://www.python.org/downloads/ ('''Python 3.6''' or '''Python 2.7''') | * Python from https://www.python.org/downloads/ ('''Python 3.6''' or '''Python 2.7''') | ||
* [http://landinghub.visualstudio.com/visual-cpp-build-tools MSVC2015] (for Python 3 on Windows), MSCVC2008 (for Python 2 on Windows) | * [http://landinghub.visualstudio.com/visual-cpp-build-tools MSVC2015] (for Python 3 on Windows), MSCVC2008 (for Python 2 on Windows) | ||
* CMake from https://cmake.org/download/ ('''>= 3.1''') | * CMake from https://cmake.org/download/ ('''>= 3.1''') | ||
* libclang (required for the 5.9 and dev branches) from [http://download.qt.io/development_releases/prebuilt/libclang/ download.qt.io] ('''>= 3.9''') | * libclang (required for the 5.9 and dev branches) from [http://download.qt.io/development_releases/prebuilt/libclang/ download.qt.io] ('''>= 3.9''') | ||
* virtualenv (optional but recommended) | * virtualenv (optional but recommended) | ||
* Python sphinx package for documentation (optional, pip install sphinx) | * Python sphinx package for documentation (optional, pip install sphinx) | ||
=== Building from sources on Windows 10 === | |||
The following steps are performed on the command prompt (''cmd''). | |||
A 64bit infrastructure is assumed in the procedure, but if the host is a 32bit environment it is possible to just download the proper architecture packages. | |||
==== Setting up CLANG ==== | |||
* Download [http://download.qt.io/development_releases/prebuilt/libclang/ libclang], e.g. | |||
[http://download.qt.io/development_releases/prebuilt/libclang/libclang-release_39-windows-vs2015_64.7z http://download.qt.io/development_releases/prebuilt/libclang/libclang-release_39-windows-vs2015_64.7z] | |||
* Extract the files, e.g. using [http://www.7-zip.org/ 7zip] | |||
* Move the directory ''libclang'' to any desire path, e.g ''c:\'', and then set an environment variable with the new path: | |||
set LLVM_INSTALL_DIR=c:\libclang | |||
==== Getting PySide2 ==== | |||
* You must [https://git-scm.com/download/win download git] in order to clone the repository. | |||
* Clonning the official repository | |||
git clone --recursive https://codereview.qt-project.org/pyside/pyside-setup | |||
* Checking out the version that we want to build, e.g. 5.9 (Keep in mind you need to use the same version as your Qt installation) | |||
cd pyside-setup && git checkout 5.9 | |||
==== Building PySide2 ==== | |||
* You must [https://www.python.org/downloads/windows/ download Python] to build PySide2 (3.6 is recommended) | |||
* Check your Qt installation path, to specifically use that version of ''qmake'' to build PySide2. | |||
e.g. ''E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe'' | |||
* Build can take a few minutes, so it is recommended to use more than one CPU core (e.g. 8). Remember to replace the paths to your current ''qmake'' path: | |||
python setup.py build --qmake=E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe --build-tests --ignore-git --jobs=8 | |||
==== Installing PySide2 ==== | |||
* To install on the current directory, just run: | |||
python setup.py install --qmake=E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe --build-tests --ignore-git --jobs=8 | |||
==== Test installation ==== | |||
* You can execute one of the examples to verify the process is properly working. | |||
* Remember to properly set the environment variables for Qt and PySide2. | |||
python examples/examples/widgets/widgets/tetrix.py | |||
== Development == | == Development == |
Revision as of 10:06, 29 January 2018
The Qt library has to be built with the same version of MSVC as Python and PySide2, this can be selected when using the online installer.
Requirements
- Qt package from https://www.qt.io or a custom build of Qt (preferably Qt 5.9)
- Python from https://www.python.org/downloads/ (Python 3.6 or Python 2.7)
- MSVC2015 (for Python 3 on Windows), MSCVC2008 (for Python 2 on Windows)
- CMake from https://cmake.org/download/ (>= 3.1)
- libclang (required for the 5.9 and dev branches) from download.qt.io (>= 3.9)
- virtualenv (optional but recommended)
- Python sphinx package for documentation (optional, pip install sphinx)
Building from sources on Windows 10
The following steps are performed on the command prompt (cmd). A 64bit infrastructure is assumed in the procedure, but if the host is a 32bit environment it is possible to just download the proper architecture packages.
Setting up CLANG
- Download libclang, e.g.
http://download.qt.io/development_releases/prebuilt/libclang/libclang-release_39-windows-vs2015_64.7z
- Extract the files, e.g. using 7zip
- Move the directory libclang to any desire path, e.g c:\, and then set an environment variable with the new path:
set LLVM_INSTALL_DIR=c:\libclang
Getting PySide2
- You must download git in order to clone the repository.
- Clonning the official repository
git clone --recursive https://codereview.qt-project.org/pyside/pyside-setup
- Checking out the version that we want to build, e.g. 5.9 (Keep in mind you need to use the same version as your Qt installation)
cd pyside-setup && git checkout 5.9
Building PySide2
- You must download Python to build PySide2 (3.6 is recommended)
- Check your Qt installation path, to specifically use that version of qmake to build PySide2.
e.g. E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe
- Build can take a few minutes, so it is recommended to use more than one CPU core (e.g. 8). Remember to replace the paths to your current qmake path:
python setup.py build --qmake=E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe --build-tests --ignore-git --jobs=8
Installing PySide2
- To install on the current directory, just run:
python setup.py install --qmake=E:\Qt\5.9.4\msvc2015_64\bin\qmake.exe --build-tests --ignore-git --jobs=8
Test installation
- You can execute one of the examples to verify the process is properly working.
- Remember to properly set the environment variables for Qt and PySide2.
python examples/examples/widgets/widgets/tetrix.py
Development
Development happens in the 5.9 and dev branches of the pyside-setup repository.
The top level repository has the following submodules:
- sources/pyside2-tools: uic, rcc tools
- examples/
Contributions follow the standard process.
It is helpful to have debug binaries and/or symbols for Python available. On Windows, this is done by choosing Customized Installation when installing Python and ticking the respective check boxes.
It is also recommended to use a Virtual Environment for testing to be able to always start from a clean base and avoid issues with write permissions in installations.
On Windows an installation step may be required:
python -m pip install virtualenv python -m virtualenv testenv
The Virtual Environment is activated by·
CALL testenv\Scripts\activate.bat
Before building the first time, the module Sphinx should be installed into the virtual environment:·
pip install sphinx