1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
|project| Getting Started
==========================
This page is focused on building |project| from source, if you just want to install |pymodname|
with ``pip`` you need to run::
pip install pyside2
for more details, refer to our `Quick Start`_ guide.
.. _Quick Start: quickstart.html
General Requirements
--------------------
* **Python**: 3.5+ and 2.7
* **Qt:** 5.12+ is recommended
* **libclang:** The libclang library, recommended: version 6 for PySide2 5.12.
Prebuilt versions of it can be `downloaded here`_.
* **CMake:** 3.1+ is needed.
.. _downloaded here: http://download.qt.io/development_releases/prebuilt/libclang/
Guides per platform
-------------------
You can refer to the following pages for platform specific instructions:
* `Windows`_,
* `macOS`_,
* `Linux`_,
* Mobile platforms (iOS/Android) **(no support)**
* Embedded platforms **(no official support)**
.. note:: Most Linux-based embedded OS provide PySide2 with their official
package manager (e.g. `Raspbian`_ and `ArchlinuxARM`_).
.. _Windows: gettingstarted-windows.html
.. _macOS: gettingstarted-macOS.html
.. _Linux: gettingstarted-linux.html
.. _Raspbian: https://www.raspbian.org/
.. _ArchlinuxARM: https://archlinuxarm.org/
A normal building command will look like this::
python setup.py install --qmake=/path/to/qmake \
--ignore-git \
--debug \
--build-tests \
--parallel=8 \
--make-spec=ninja \
--verbose-build \
--module-subset=Core,Gui,Widgets
Which will build and install the project with **debug** symbols, including the **tests**,
using **ninja** (instead of make), and considering only the **module subset** of QtCore, QtGUI
and QtWidgets.
Other important options to consider are:
* ``--cmake``, to specify the path to the cmake binary,
* ``--reuse-build``, to rebuild only the modified files,
* ``--openssl=/path/to/openssl/bin``, to use a different path for OpenSSL,
* ``--standalone``, to copy over the Qt libraries into the final package
to make it work on other machines.
Testing the installation
-------------------------
Once the installation finishes, you will be able to execute any of our examples::
python examples/widgets/widgets/tetrix.py
Running Tests
--------------
Using the ``--build-tests`` option will enable us to run all the auto tests inside the project::
python testrunner.py test > testlog.txt
.. note:: On Windows, don't forget to have qmake in your path
(``set PATH=E:\Path\to\Qt\5.14\msvc2017_64\bin;%PATH%``)
You can also run a specific test (for example ``qpainter_test``) by running::
ctest -R qpainter_test --verbose
Building the documentation
---------------------------
The documentation is being generated using **qdoc** to get the API information, and also **sphinx**
for the local Python related notes.
The system required ``libxml2`` and `libxslt``, also on the Python environment, ``sphinx`` and
``graphviz`` need to be installed before running the installation process::
pip install graphviz sphinx
After installing ``graphviz`, the ``dot`` command needs to be in PATH, otherwise,
the process will fail. Installing ``graphviz`` system-wide is also an option.
Since the process rely on a Qt installation, you need to specify where the ``qtbase`` directory
you will use with your ``qmake`` is located::
export QT_SRC_DIR=/path/to/qtbase
Once the build process finishes, you can go to the generated ``*_build/*_release/pyside2``
directory, and run::
make apidoc
Finally, you will get a ``html`` directory containing all the generated documentation.
|