[CMake] Using Qt5 with CMake

Alan W. Irwin irwin at beluga.phys.uvic.ca
Wed Mar 12 13:51:09 EDT 2014


Hi Steve:

Your answer was quite helpful, but I have one supplementary
question.

On 2014-03-12 09:34+0100 Stephen Kelly wrote:

> Alan W. Irwin wrote:
>
>> (1) How should you replace
>>
>> find_package(Qt4 4.8.2 COMPONENTS QtCore QtGui QtSvg)
>
> find_package(Qt5 5.2.1 COMPONENTS Svg)
>
> or
>
> find_package(Qt5Svg 5.2.1)
>
> Packages and targets know their dependencies so you don't have to.

Your statement appears to imply that QtSvg has a QtGui (and QtCore)
dependency so I don't have to worry about those other components.
That is great if true, but I need confirmation of that since I have
very little knowledge of the Qt components, and how they depend on
each other.  Note, we use Qt to produce plots in a very wide range of
non-interactive file formats as well using Qt to implement an
interactive Qt plotting device.  As far as I know QtSvg is required because one
of the file formats is SVG, and QtGui is required for the interactive
Qt-related device.  But I am quite surprised that the QtSvg component
depends on QtGui because I had always thought of the SVG standard as
being completely file oriented. So your confirmation of that
dependency would be appreciated.

By the way after re-reading the documentation at
http://doc-snapshot.qt-project.org/qt5-stable/cmake-manual.html, I
have decided not to use the "Using Qt 5 with CMake older than 2.8.9"
approach as I suggested earlier today. Instead, I will first try using
the qt5_use_modules approach (which is natural since the PLplot
minimum CMake version is already 2.8.9).

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
__________________________


More information about the CMake mailing list