cmake issue: includes
Adriaan de Groot
groot at kde.org
Thu Mar 30 14:21:05 BST 2006
On Friday 24 March 2006 14:02, William A. Hoffman wrote:
> At 06:05 AM 3/24/2006, Adriaan de Groot wrote:
> >Building kdebase against yesterday's kdelibs:
> >
> >adridg at kde$ gmake
> >Building CXX object libkonq/CMakeFiles/konq.dir/konq_operations.o
> >/mnt/src/kde/kde-4.0/kdebase/libkonq/konq_operations.cc:65:18: X11/Xlib.h:
> > No such file or directory
>
> include_directories(${X11_INCLUDE_DIR})
It remains clear as mud to me *how* the include paths are calculated and where
they are set -- and why they are in the order they are. I would largely
expect compiles to have the includes in the following order:
KDE includes
Qt includes
Extra includes (is there even an --with-extra-includes functionality?)
X11 includes
Now, if I look at the compilation of DCOP, I see in DCOP's CMakefile
include_directories( ${QT_INCLUDES} )
which adds the Qt includes *at the end of the list to look in*. Why is that
even necessary? Why isn't QTDIR/include (or its subdirs) added automatically?
Why *is* X11_INCLUDES added in the generic includes for everyone?
Anyway, the reason this is a problem for me is that I have Qt3 installed on my
system. This is widely regarded as a bad thing. In particular, Qt3 installs
includes in /usr/X11R6/include -- this is standard on FreeBSD systems. So now
my KDE4 DCOP compiles, which get includes in the order KDE - X11 - Qt pull in
Qt3 headers instead of Qt4. The attached patch shuffles things around a
little bit: it puts the X11 headers at the end. Is that sensible?
--
Adriaan de Groot
KDE Quality Team
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cmake.diff
Type: text/x-diff
Size: 1571 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20060330/389730ba/attachment.diff>
More information about the kde-core-devel
mailing list