Back in March 2014, I took the first tentative steps to change our build system to support Qt5, and after delay due to (1) lack of access to Qt5 that was resolved recently and (2) the completely different nature of Qt4 versus Qt5 CMake support, I have finally matured that project tonight (commit 34db4b3). The result is perfect comprehensive test results for both the Qt5 and Qt4 cases.
Note carefully (see the commit message for the details) the semantics of PLPLOT_USE_QT5 have considerably changed, and most users will just take the default -DPLPLOT_USE_QT5=OFF case here (which means our build system will first look for Qt4, and if that fails look for Qt5). But if a user actively dislikes the Qt4 choice, then they can force the build system to skip the stage looking for Qt4 by specifying -DPLPLOT_USE_QT5=ON. The reason why our build system makes Qt4 the first preference by default is that library has no character misalignment issues or memory management issues on my Debian Jessie system while Qt5 still shows both kinds of errors. Furthermore, and this is a real killer for Qt5 until the Qt developers fix this significant inefficiency, our qt devices (which use exactly the same Qt API regardless of whether our build system finds Qt4 or Qt5) are a factor of two faster for Qt4 than they are for Qt5! (For example, the comprehensive tests for the present commit took 36 minutes for Qt4 and 71 minutes for Qt5.) With Debian Jessie, I have demonstrated that "perfect" (i.e., no character misalignment or memory management issues) Qt4 library suites do exist but, as far as I know, nobody has yet found a "perfect" Qt5 library suite. Of course, it is still quite possible that various software distros inadvertently screw up Qt4 so that it is actually worse than Qt5 with regard to, e.g., memory management. Apparently Hazen has found one such distribution so he might want to specify -DPLPLOT_USE_QT5=ON for that particular distribution (or, better yet, move to a distribution that supports Qt a lot better). But unless the good Qt4, mediocre Qt5 results on Debian Jessie are atypical, I plan to keep the present Qt4 preference of our build system. In sum, commit 34db4b3 is a major step in the march to the freeze date one week from now and finishes my planned Qt-related activity, but I hope to do a lot more on non-Qt topics before that date. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel