On 02/03/2011 10:29 PM, David C. Rankin wrote:
<snip>
> But even with these variables, the build grabs QtCore regardless.
Serghei,
Looking closer, the kdebase admin/acinclude.m4.in may be part of the problem.
It seems to check for kde4 first and then sets QTDIR to qt4 if found before
checking for kde3:
12:54 archangel:/dat_e/david/bld/trinity/kdebase> grep -r QTDIR *
admin/acinclude.m4.in:dnl in $QTDIR/bin, and some more usual places
admin/acinclude.m4.in: kde_qt_dirs="$QTDIR /usr/lib/qt4 /usr/lib/qt
/usr/share/qt4"
admin/acinclude.m4.in: kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt
/usr/share/qt3 /usr/lib${kdelibsuff}/qt-3.3"
admin/acinclude.m4.in: kde_qt_dirs="$QTDIR /usr/lib/qt2 /usr/lib/qt"
admin/acinclude.m4.in: kde_qt_dirs="$QTDIR /usr/lib/qt"
admin/acinclude.m4.in:AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html
$QTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc
/usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3
/usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ],
QTDOCDIR)
The actual tests are:
if test $kde_qtver = 4; then
kde_qt_dirs="$QTDIR /usr/lib/qt4 /usr/lib/qt /usr/share/qt4"
fi
if test $kde_qtver = 3; then
kde_qt_dirs="$QTDIR /usr/lib/qt3 /usr/lib/qt /usr/share/qt3
/usr/lib${kdelibsuff}/qt-3.3"
if test -z "$PKG_CONFIG"; then
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
fi
if test "$PKG_CONFIG" != "no" ; then
if $PKG_CONFIG --exists qt-mt ; then
kde_qt_dirs="$kde_qt_dirs `$PKG_CONFIG --variable=prefix qt-mt`"
fi
fi
fi
Could this be one of the issues?
Even with -DQTDIR=/opt/qt, the build on boxes with kde4 installed still fails
for the same reason:
[ 11%] Building CXX object
kicker/libkicker/CMakeFiles/kickermain-shared.dir/kickerSettings.cpp.o
cd /dat_e/david/bld/trinity/kdebase/src/kicker/libkicker && /usr/bin/c++
-Dkickermain_shared_EXPORTS -DHAVE_CONFIG_H -DUSE_QT3 -DQT_NO_ASCII_CAST
-DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION
-DQT_THREAD_SUPPORT -D_REENTRANT -march=x86-64 -mtune=generic -O2 -pipe
-include tqt.h -fPIC -I/dat_e/david/bld/trinity/kdebase/src/kicker/libkicker
-I/opt/trinity/include -I/opt/qt/include -I/opt/qt/include/tqt -o
CMakeFiles/kickermain-shared.dir/kickerSettings.cpp.o -c
/dat_e/david/bld/trinity/kdebase/src/kicker/libkicker/kickerSettings.cpp
In file included from /usr/include/QtCore/QFile:1:0,
from
/dat_e/david/bld/trinity/kdebase/src/kicker/libkicker/kickerSettings.cpp:7:
/usr/include/QtCore/qfile.h:53:1: error: ‘QT_BEGIN_HEADER’ does not name a type
/usr/include/QtCore/qfile.h:62:27: error: expected initializer before ‘:’ token
make[2]: ***
[kicker/libkicker/CMakeFiles/kickermain-shared.dir/kickerSettings.cpp.o] Error 1
make[2]: Leaving directory `/dat_e/david/bld/trinity/kdebase/src'
make[1]: *** [kicker/libkicker/CMakeFiles/kickermain-shared.dir/all] Error 2
make[1]: Leaving directory `/dat_e/david/bld/trinity/kdebase/src'
make: *** [all] Error 2
Aborting...
--
David C. Rankin, J.D.,P.E.