Hi,
First of all I'm new to this list and I'm not sure if this is the right
place to ask. The question I got concerns qt to (or mostly qt) but the
trolltech guys told me it might be a good idea to contact the x
developer list. So I'm posting my question again on this list.
I'm trying to compile qt (versions 3.0.0 and 2.3.2) both of them got xft
support build in.
The problem I got is that 'qt' can't find some structs it depends on
namely XftValueList and stuff conected to it (the compiler error is
attached).
While there are structs defined in Xft.h (X 4.2.0) these's defines
aren't there (in Xft.t) in the cvs version of X anymore. Doing
grep -r XftValueList *
in the X source toplevel directory will result in
<----
[0]: grep -r XftValueList *
exports/include/X11/Xft/XftCompat.h:#define XftValueListDestroy
FcValueListDestroy
lib/Xft/Xft-def.cpp:XftValueListPrint
lib/Xft/Xft-def.cpp:XftValueListDestroy
lib/Xft/XftCompat.h:#define XftValueListDestroy FcValueListDestroy
lib/Xft/xftpat.c:XftValueListDestroy (XftValueList *l)
lib/Xft/xftpat.c: XftValueListDestroy (e->values);
lib/Xft/xftpat.c: XftValueList *l;
lib/Xft/xftpat.c: XftValueList *l;
lib/Xft1/Xft-def.cpp:XftValueListPrint
lib/Xft1/Xft-def.cpp:XftValueListDestroy
root@goliath -- /home/share/src/cvs/xc
[0]:
---->
This tells me that the structs are still used but defined some place
else. Compiling X (cvs) wont results in any errors at all.
There's another point making a 'make install' wont copy the file
XftFreetype.h into its proper place, $X_INSTALL/include/X11/Xft/, at
least it's installed there in X 4.2.0. The file wont be copied at all
but qt and other program do include this file. I'm not sure if it's
suppossed to be copied so ...
Any advice would be welcome.
regards
Christian Quast
make[1]: Entering directory `/usr/local/apps/qt-x11-free/3.0.3'
cd qmake && make
make[2]: Entering directory `/usr/local/apps/qt-x11-free/3.0.3/qmake'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/usr/local/apps/qt-x11-free/3.0.3/qmake'
cd src/moc && make
make[2]: Entering directory `/usr/local/apps/qt-x11-free/3.0.3/src/moc'
make[2]: Nothing to be done for `first'.
make[2]: Leaving directory `/usr/local/apps/qt-x11-free/3.0.3/src/moc'
cd src && make
make[2]: Entering directory `/usr/local/apps/qt-x11-free/3.0.3/src'
g++ -c -pipe -pg -Wall -W -O2 -D_REENTRANT -DQT_TABLET_SUPPORT -DQT_NO_DEBUG
-DQT_THREAD_SUPPORT -DQT_THREAD_SUPPORT -DQT_NO_NIS -DQT_NO_XFTNAMEUNPARSE
-DQT_NO_REMOTE -DQT_BUILTIN_GIF_READER=1 -DQT_NO_STYLE_AQUA -DQT_NO_STYLE_MAC
-DQT_NO_STYLE_INTERLACE -DQT_NO_STYLE_COMPACT -I/usr/X11R6/include/freetype2
-I3rdparty/zlib -I/usr/local/apps/qt-x11-free/3.0.3/include -I/usr/X11R6/include
-I/usr/X11R6/include -I.moc/release-mt/
-I/usr/local/apps/qt-x11-free/3.0.3/mkspecs/linux-g++ -o
.obj/release-mt/qtaddons_x11.o kernel/qtaddons_x11.cpp
kernel/qtaddons_x11.cpp: In function `int _XftNameUnparseValue(_FcValue, char *, char
**, int *)':
kernel/qtaddons_x11.cpp:108: passing `const FcChar8 *' as argument 1 of
`_XftNameUnparseString(const char *, char *, char **, int *)' changes signedness
kernel/qtaddons_x11.cpp:118: warning: enumeration value `FcTypeMatrix' not handled in
switch
kernel/qtaddons_x11.cpp:118: warning: enumeration value `FcTypeCharSet' not handled in
switch
kernel/qtaddons_x11.cpp: At top level:
kernel/qtaddons_x11.cpp:123: `XftValueList' was not declared in this scope
kernel/qtaddons_x11.cpp:123: `v' was not declared in this scope
kernel/qtaddons_x11.cpp:123: parse error before `*'
kernel/qtaddons_x11.cpp: In function `int _XftNameUnparseValueList(...)':
kernel/qtaddons_x11.cpp:125: `v' undeclared (first use this function)
kernel/qtaddons_x11.cpp:125: (Each undeclared identifier is reported only once
kernel/qtaddons_x11.cpp:125: for each function it appears in.)
kernel/qtaddons_x11.cpp:127: `escape' undeclared (first use this function)
kernel/qtaddons_x11.cpp:127: `destp' undeclared (first use this function)
kernel/qtaddons_x11.cpp:127: `lenp' undeclared (first use this function)
kernel/qtaddons_x11.cpp: In function `int XftNameUnparse(XftPattern *, char *, int)':
kernel/qtaddons_x11.cpp:143: `XftPatternElt' undeclared (first use this function)
kernel/qtaddons_x11.cpp:143: `e' undeclared (first use this function)
kernel/qtaddons_x11.cpp:146: implicit declaration of function `int FcPatternFind(...)'
make[2]: *** [.obj/release-mt/qtaddons_x11.o] Error 1
make[2]: Leaving directory `/usr/local/apps/qt-x11-free/3.0.3/src'
make[1]: *** [sub-src] Error 2
make[1]: Leaving directory `/usr/local/apps/qt-x11-free/3.0.3'
make: *** [init] Error 2