On Thursday 02 September 2010 20:29:18 Timothy Pearson
wrote:
Hello,
I found that tqt.h is modified only at install stage.
That is correct, however the automake/autoconf system defines USE_QT3 or
USE_QT4 based on the Qt version specified in admin/acinclude.m4.in.
The new CMake-based build system will also need to define USE_QT3 or
USE_QT4 when it builds any of the Trinity modules. This is to allow
conditional code within Trinity so as to maintain build compatibility
with
both versions of Qt.
I predicted this, so i renamed tqt.h to tqt.h.in and I generate tqt.h via
cmake script.
Works for me.
If I
define USE_QT3
before compilation, the compilation stop with this error:
tqinputcontext.h:32:27: error: qinputcontext.h: No such file or
directory
This is intended behaviour? If yes, for what purpose is designed in
this
way?
No, that is not the intended behaviour. Do you have the qinputcontext.h
header file present on your system? The old autoconf/automake system
actively searched for the Qt headers and added the that directory to the
include search path in the gcc flags.
qinputcontext.h seems QT4 file, I have it only in
qtinterface/qt4/Qt/qinputcontext.h. I must to include this directory in
include paths, even for QT3 build?
It is present in my version of Qt3; see this page:
http://packages.ubuntu.com/lucid/i386/libqt3-headers/filelist
I am not sure why it does not exist on your system. If it is not a
generic file present on all Qt installations then you may have to let
CMake search for it and conditionally remove the reference to it based on
the CMake search results.
Also please be aware that for all modules that
rely on TQt, you will
need
to detect the presence of the TQt headers, and pass the "-include tqt.h"
I created a file named TQt.pc, for detecting is via pkg-config
flag to gcc. You should also add the TQt header
directory to gcc's
include search path.
Good to know.
--
Serghei