Notice: Planned to merge branch alvin/T6503-python-win into master, and the side-effects of this

Alvin Wong alvinhochun+krita at gmail.com
Tue Jul 25 14:18:29 UTC 2017


Dear all,

I will be merging my branch `alvin/T6503-python-win` into `master` on
Saturday (29/7). The branch enables Python scripting support for
Windows build.

Since it was anticipated that Krita will update to Qt 5.9.1 (or newer
if available) at least for the Windows build, I decided to move to Qt
5.9.1 before working on Python support, and also took the chance to
update the build toolchain to mingw-w64 7.1.

There are some side-effects which might affect other platforms. Here
is a list of things to note:

== All platforms ==

- Vc in 3rdparty (ext_vc) is updated to Vc 1.3.2. While this will
affect new builds building ext_vc manually, you are _not_ required to
update so no actions have to be done. (Commit 1cc494b)


== Windows-specific ==

- You are strongly suggested to update mingw-w64 to version 7.1 rev1
(rev0 is fine though you will miss some compiler updates).
- ext_qt, ext_python, ext_sip and ext_pyqt are updated, so it would be
the best to do a clean rebuild for all 3rdparty deps and Krita itself.
- A CMake option QT_ENABLE_DEBUG_INFO is added to 3rdparty for
enabling debug info with ext_qt, but the `package_2.cmd` packaging
scripts will not be able to package the build without first stripping
the debug information from Qt DLLs (due to a defect with windeployqt
[1]). Please beware.
- To compile with Python support, you need to install exactly Python
3.6.2 with the architecture matching the target architecture.
- If you copied the `package_2.cmd` packaging script somewhere, please
merge in the updates or you will not have working Python scripting in
the packaged build.


== Linux-specific ==

- The process of finding SIP and PyQt has changed slightly. If you
somehow built either or both yourself but had been using the
system-wide versions instead, weird stuff might happen. (Commit
49ce6bd)
- The Python plugin uses a slightly different way to set the Python
paths and initialize Python. Though I did test that it works on Linux,
it might have different effects on different distros. If it breaks,
please report a bug. (Commits 46fc6dc...99a4c49)


For more information, you can refer to the updated
`3rdparty/README.md`, and the Phabricator tasks T6503 [2] and T6521
[3].

If nothing special, I will merge and push at around Saturday morning
(European timezones). I hope nobody will be surprised by broken
builds!

Best Regards,
Alvin Wong

[1]: https://bugreports.qt.io/browse/QTBUG-62103
[2]: https://phabricator.kde.org/T6503
[3]: https://phabricator.kde.org/T1625


More information about the kimageshop mailing list