Some feedback on downloads page and qt4/qt5 compatability

Submitted by pztrn on 2017-01-17

As per webissues.mimec.org/node/891, webissues client failing on FreeBSD with Qt5, so I decided to try to build with Qt4, as download page states that it can de build with Qt 4.7 or newer.

First issue - application paths, which I solved by replacing QStandartPaths with QDesktopServices.

Second - QAccessibilityEvent. It is used in a way which incompatible with Qt4 (tested with qt4 4.8.7), therefore it can't be built with Qt4. For example:

../../webissues-1.1.4/src/dialogs/commanddialog.cpp:183:22: error: no matching constructor for initialization of 'QAccessibleEvent'
    QAccessibleEvent event( &box, QAccessible::Alert );
                     ^      ~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/qt4/QtGui/qaccessible.h:462:26: note: candidate constructor not viable: no known conversion from 'QMessageBox *' to 'QEvent::Type' for 1st argument
inline QAccessibleEvent::QAccessibleEvent(Type atype, int achild)
                         ^
/usr/local/include/qt4/QtGui/qaccessible.h:449:20: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class Q_GUI_EXPORT QAccessibleEvent : public QEvent
                   ^
../../webissues-1.1.4/src/dialogs/commanddialog.cpp:201:22: error: no matching constructor for initialization of 'QAccessibleEvent'
    QAccessibleEvent event( &box, QAccessible::Alert );
                     ^      ~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/qt4/QtGui/qaccessible.h:462:26: note: candidate constructor not viable: no known conversion from 'QMessageBox *' to 'QEvent::Type' for 1st argument
inline QAccessibleEvent::QAccessibleEvent(Type atype, int achild)
                         ^
/usr/local/include/qt4/QtGui/qaccessible.h:449:20: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class Q_GUI_EXPORT QAccessibleEvent : public QEvent
                   ^
2 errors generated.
*** [../tmp/obj/release/commanddialog.o] Error code 1

Yet webissues client 1.1.3 can be built with Qt4 and have no crashes like 1.1.4. But 1.1.3 can't be build with Qt5:

../../webissues-1.1.3/src/application.h:23:10: fatal error: 'QApplication' file not found
--- ../tmp/obj/release/main.o ---
In file included from ../../webissues-1.1.3/src/main.cpp:20:
--- ../tmp/obj/release/application.o ---
#include <QApplication>
         ^
--- ../tmp/obj/release/main.o ---
../../webissues-1.1.3/src/application.h:23:10: fatal error: 'QApplication' file not found
#include <QApplication>
         ^
--- ../tmp/obj/release/abstractbatch.o ---
c++ -c -O2 -pipe -fstack-protector -fno-strict-aliasing -std=gnu++11 -pthread -Wall -W -fPIC -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_SQL_LIB -DQT_CORE_LIB -I../../webissues-1.1.3/src -I/usr/ports/devel/webissues/work/.build/src -I../../webissues-1.1.3/src -I/usr/local/include/qt5 -I/usr/local/include/qt5/QtWebKit -I/usr/local/include/qt5/QtGui -I/usr/local/include/qt5/QtNetwork -I/usr/local/include/qt5/QtXml -I/usr/local/include/qt5/QtSql -I/usr/local/include/qt5/QtCore -I../tmp/moc/release -I/usr/local/include -I/usr/local/lib/qt5/mkspecs/freebsd-clang -o ../tmp/obj/release/abstractbatch.o ../../webissues-1.1.3/src/commands/abstractbatch.cpp
--- ../tmp/obj/release/mainwindow.o ---
In file included from ../../webissues-1.1.3/src/mainwindow.cpp:20:
../../webissues-1.1.3/src/mainwindow.h:25:10: fatal error: 'QMainWindow' file not found
#include <QMainWindow>
         ^
--- ../tmp/obj/release/main.o ---
1 error generated.
*** [../tmp/obj/release/main.o] Error code 1

So I would request either:

1. Update 1.1.4 client so it can be build with Qt4, as stated on Downloads page.
2. Update download page about Qt5 requirement and update 1.1.4 client with QIoDevice addition.

Thanks!

Yes, that's true, version 1.1.3 was the last version compatible with Qt4, and version 1.1.4 was ported to Qt5. I updated the download page, thanks for pointing that out. Also I fixed the QIODevice problem in the SVN.

Regards,
Michał