On 2016.10.29 12:40, Jack Ostroff wrote:
Trying to build 4.8, if I set QT_SELECT=4, it does mainly pull in Qt4
stuff and not Qt5, but not completely. Something is still pulling in
some Qt5 stuff. CMakeCache.txt still includes:
CMakeCache.txt://The directory containing a CMake configuration file
for Qt5Core.
CMakeCache.txt:Qt5Core_DIR:PATH=/usr/lib/i386-linux-gnu/cmake/Qt5Core
CMakeCache.txt://The directory containing a CMake configuration file
for Qt5DBus.
CMakeCache.txt:Qt5DBus_DIR:PATH=/usr/lib/i386-linux-gnu/cmake/Qt5DBus
In addition, if I include -DQT_INSTALL_DIR=path/to/qt4 it says it is
a manually specified variable which is not used, although it does
show up in CMakeCache.txt. If I do NOT include it, CMakeCache.txt
shows it pointing to the Qt5 version.
Right now, I'm working on Kubuntu 16.10, but I've had similar
problems in the previous Kubuntu version and on Gentoo. Is it likely
I've got some dependency installed as a Qt5 version, and if so, how
do I find it without explicitly checking every one?
I'm getting rather frustrated with this, partly becuase I've tried so
many different approaches (trying both 4.8 and master) that I know
I've gotten myself confused as to exactly what I have with any
particular attempt.
I think I figured out at least where those two Qt5 (Core and DBus)
entries were coming from. It was cmake itself, confirmed at least on
my Gentoo box. Gentoo uses "use flags" to control configuration
options. Many qt based applications have qt4 and qt5 use flags, and
you can generally have only one of them set, to choose which one you
want. However, I just today noticed that cmake does have a qt5 flag
(which has been set on my system at a global level.) In most other
packages, I manually set -qt5 and qt4 (which is globally set -qt4) but
I just figured out that cmake not only does not have a qt4 flag, the
qt5 flag appears to be used to force cmake to include those two
variables, which does pull in a bunch of qt5 stuff. I rebuilt cmake
with -qt5, and am now building KMM 4.8. git head, and there is no qt5
related anything in the created CMake files. I'll eventually find out
if this messes up any other builds, but I take this as a good sign. I
haven't dug deep enough to figure out what ./configure settings the qt5
flag changes, but I wonder if those settings have been used on cmake in
other distros, and if that is behind any of the strange build problems
that some of us have been having? I wouldn't think so, since many
folks are NOT having such problems, but I have nothing else to point at
right now.
I'll update once the compile finishes successfully.
Jack