Updated: Qt 5.4.1, rebuilt

Yaakov Selkowitz yselkowitz@cygwin.com
Thu Apr 30 03:06:00 GMT 2015


The following packages have been updated in the Cygwin distribution:

* libEnginio-devel-5.4.1-2
* libEnginio1-5.4.1-2
* libQt5Core-devel-5.4.1-3
* libQt5Core5-5.4.1-3
* libQt5Declarative-devel-5.4.1-2
* libQt5Declarative5-5.4.1-2
* libQt5Designer-devel-5.4.1-2
* libQt5Designer5-5.4.1-2
* libQt5Gui-devel-5.4.1-3
* libQt5Gui5-5.4.1-3
* libQt5Help-devel-5.4.1-2
* libQt5Help5-5.4.1-2
* libQt5Location-devel-5.4.1-2
* libQt5Location5-5.4.1-2
* libQt5Multimedia-devel-5.4.1-2
* libQt5Multimedia5-5.4.1-2
* libQt5Positioning-devel-5.4.1-2
* libQt5Positioning5-5.4.1-2
* libQt5Quick-devel-5.4.1-2
* libQt5Quick5-5.4.1-2
* libQt5Script-devel-5.4.1-2
* libQt5Script5-5.4.1-2
* libQt5ScriptTools-devel-5.4.1-2
* libQt5ScriptTools5-5.4.1-2
* libQt5SerialPort-devel-5.4.1-2
* libQt5SerialPort5-5.4.1-2
* libQt5Sql-devel-5.4.1-2
* libQt5Sql5-5.4.1-2
* libQt5Svg-devel-5.4.1-2
* libQt5Svg5-5.4.1-2
* libQt5UiTools-devel-5.4.1-2
* libQt5UiTools5-5.4.1-2
* libQt5WebChannel-devel-5.4.1-2
* libQt5WebChannel5-5.4.1-2
* libQt5WebKit-devel-5.4.1-2
* libQt5WebKit5-5.4.1-2
* libQt5WebSockets-devel-5.4.1-2
* libQt5WebSockets5-5.4.1-2
* libQt5X11Extras-devel-5.4.1-2
* libQt5X11Extras5-5.4.1-2
* libQt5XmlPatterns-devel-5.4.1-2
* libQt5XmlPatterns5-5.4.1-2
* qt5-base-doc-5.4.1-3
* qt5-base-examples-5.4.1-3
* qt5-declarative-doc-5.4.1-2
* qt5-declarative-examples-5.4.1-2
* qt5-declarative-tools-5.4.1-2
* qt5-devel-tools-5.4.1-2
* qt5-doc-tools-5.4.1-2
* qt5-enginio-doc-5.4.1-2
* qt5-imageformats-5.4.1-2
* qt5-imageformats-doc-5.4.1-2
* qt5-linguist-tools-5.4.1-2
* qt5-location-doc-5.4.1-2
* qt5-location-examples-5.4.1-2
* qt5-multimedia-doc-5.4.1-2
* qt5-multimedia-examples-5.4.1-2
* qt5-quick1-examples-5.4.1-2
* qt5-quick1-tools-5.4.1-2
* qt5-quickcontrols-5.4.1-2
* qt5-quickcontrols-doc-5.4.1-2
* qt5-quickcontrols-examples-5.4.1-2
* qt5-script-doc-5.4.1-2
* qt5-script-examples-5.4.1-2
* qt5-serialport-doc-5.4.1-2
* qt5-svg-doc-5.4.1-2
* qt5-svg-examples-5.4.1-2
* qt5-tools-doc-5.4.1-2
* qt5-tools-examples-5.4.1-2
* qt5-webchannel-doc-5.4.1-1
* qt5-webchannel-examples-5.4.1-1
* qt5-webkit-doc-5.4.1-2
* qt5-webkit-examples-5.4.1-2
* qt5-webkit-examples-doc-5.4.1-2
* qt5-websockets-doc-5.4.1-1
* qt5-x11extras-doc-5.4.1-2
* qt5-xmlpatterns-doc-5.4.1-2
* qt5-xmlpatterns-examples-5.4.1-2

Qt is a cross-platform C++ application framework for desktop and
embedded development. Qt enables programmers to create advanced GUI
applications once and deploy them to multiple platforms without
rewriting the source code.

It turns out there has been a change in signal/slot handling in Qt 5
which requires code to be compiled with correct dllexport/dllimport
attributes.  While Qt 5 and code which uses it will *compile* fine by
simply relying on auto import as usual, resulting binaries end up with
numerous signals misfiring with the following warning on stderr:

QObject::connect: signal not found in [Class]

These warnings are *not* harmless; the problem is so bad that it caused
the new Qt5WebChannel and Qt5WebSockets APIs to be completely
non-functional at first.  With dllexport/dllimport these are now working
correctly and therefore have been added to the distribution.

The existing Qt5 packages have been completely rebuilt to use
dllexport/dllimport (in the form of Q_DECL_EXPORT/Q_DECL_IMPORT).  While
technically ABI compatible, I strongly recommend all self-compiled
Qt5-based code be rebuilt to assure proper operation.

Please note that you may occasionally encounter third-party Qt5-based
code (intended solely for *NIX systems) which incorrectly uses the
Q_DECL_{EX,IM}PORT macros, which will result in compile and/or link
errors.  These cases will have to be patched.

This release also fixes QGtkStyle, which should be used automatically
within the GTK+ based desktops, and can be activated manually by setting
QT_STYLE_OVERRIDE=gtk in your environment or passing -style gtk as
command line arguments.

--
Yaakov




More information about the Cygwin-announce mailing list