x.org X11R6.8.1 source tree was compiled (according to my best conscience) exactly according to step-by-step guide presented in README and BUILD. The compilation crashed with this error: gcc -m32 -c -O2 -fno-strength-reduce -fno-strict-aliasing -ansi -pedantic -Wall -Wpointer-arith -Wundef -I/usr/include/freetype2 -I/usr/includ e/freetype2/config -I../../extras/fontconfig/src -I../../extras/fontconfig -I../../exports/include/X11 -I../.. -I../../exports/include -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DFUNCPROTO=15 -DNARRO WPROTO -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -DFC_DEFAULT_FONTS='""' -DHAVE_EXPAT -DXFREE86_FT2 -DFONTCONFIG_PATH='"/etc/fonts"' -fPIC fcatomic.c In file included from ../../extras/fontconfig/fontconfig/fcfreetype.h:26, from ../../extras/fontconfig/src/fcint.h:38, from fcatomic.c:49: /usr/local/include/ft2build.h:55:38: freetype/config/ftheader.h: No such file or directory In file included from ../../extras/fontconfig/src/fcint.h:38, from fcatomic.c:49: ../../extras/fontconfig/fontconfig/fcfreetype.h:27:10: #include expects "FILENAME" or <FILENAME> In file included from ../../extras/fontconfig/src/fcint.h:38, from fcatomic.c:49: ../../extras/fontconfig/fontconfig/fcfreetype.h:30: syntax error before "FcFreeTypeCharIndex" ../../extras/fontconfig/fontconfig/fcfreetype.h:30: syntax error before "face" ../../extras/fontconfig/fontconfig/fcfreetype.h:30: warning: type defaults to `int' in declaration of `FcFreeTypeCharIndex' ../../extras/fontconfig/fontconfig/fcfreetype.h:30: ISO C forbids data definition with no type or storage class ../../extras/fontconfig/fontconfig/fcfreetype.h:33: syntax error before "face" ../../extras/fontconfig/fontconfig/fcfreetype.h:36: syntax error before "face" ../../extras/fontconfig/fontconfig/fcfreetype.h:39: syntax error before "FT_Face" ../../extras/fontconfig/fontconfig/fcfreetype.h:42: warning: type defaults to `int' in declaration of `FT_Face' ../../extras/fontconfig/fontconfig/fcfreetype.h:42: syntax error before "f" In file included from fcatomic.c:49: ../../extras/fontconfig/src/fcint.h:496: syntax error before "encoding" fcatomic.c: In function `FcAtomicLock': fcatomic.c:101: warning: unused variable `fd' fcatomic.c:102: warning: unused variable `f' make[4]: *** [fcatomic.o] Error 1 make[4]: Leaving directory `/home/clock/build/lib/fontconfig' make[3]: *** [all] Error 2 make[3]: Leaving directory `/home/clock/build/lib' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/clock/build' make[1]: *** [World] Error 2 make[1]: Leaving directory `/home/clock/build' make: *** [World] Error 2 Please tell what should be examined about placement, versions etc. of various libraries to determine cause of this IMHO bug.
Does the build succeed when you put the line -- snip -- #define HasFreetype2 NO -- snip -- into xc/config/cf/host.def ?
xc/config/cf/hotst.def doesn't exist. So I created it, put "#define HasFreetype2 NO" and rerun again. This time the compilation was successfull. However, I believe that Freetype 2 is installed on my system: clock@beton:~$ locate freetype2 /usr/local/include/freetype2 /usr/local/include/freetype2/freetype /usr/local/include/freetype2/freetype/cache /usr/local/include/freetype2/freetype/cache/ftccache.h /usr/local/include/freetype2/freetype/cache/ftccmap.h [...] clock@beton:~$ locate libfreetype /opt/openoffice/program/filter/libfreetype.so.6 /usr/local/lib/libfreetype.a /usr/local/lib/libfreetype.la /usr/local/lib/libfreetype.so /usr/local/lib/libfreetype.so.6 /usr/local/lib/libfreetype.so.6.3.3 /usr/X11R6/lib/modules/fonts/libfreetype.a /usr/X11R6/lib/modules/libfreetype.a clock@beton:~$ freetype-config --version 9.3.3 clock@beton:~$ which freetype-config /usr/local/bin/freetype-config Also I remember installing freetype2 at least once in the past from sources (manually) according to their README, do not remember deliberately deleting it, and various programs with freetype support (mozilla, gimp, gtk etc.) work for me from which I infer my belief that freetype2 is installed on my system. Neither freetype2 nor X.Org README AFAIK presents any official procedure to test arbitrary running system for presence of properly installed freetype2, so that my subjective beliefs are the only thing I am able to offer :( Moreover, freetype2 is not listed among prerequisites for compilation of X.Org server in the BUILDING file. Only fontconfig is mentioned which I assume is different project from Freetype2. So I am surprised by the fact that the compilation is dependent on it.
I have removed freetype2 completely from the system and installed brand new again (2.1.9) and the problems persists (without changes to config/cf/host.def). The problem happened in lib/fontconfig. lib/fontconfig/Makefile reveals FREETYPE2INCDIR=/usr/include This is the problem. It should be FREETYPE2INCDIR=/usr/local/include because freetype2 on my system is installed in /usr/local prefix. My installation seems to be OK: 1) freetype-config --cflags reports /usr/local prefix 2) pkg-config --cflags freetype2 reports /usr/local prefix 3) /usr/local/lib/pkgconfig is included in system-wide environment variable PKG_CONFIG_PATH So it looks like XFree86.Org have two bugs: 1) the BUILD file in toplevel doesn't mention freetype2, although it seems to be a dependency. 2) the BUILD file should either specify that freetype2 must be installed in /usr prefix, or X.Org should test what prefix it is installed in.
This needs to be clearly documented for the 6.9 release.
Examples have been added to xorgsite.def and instructions added to the BUILD file in CVS head for the upcoming 6.9 release. Closing as fixed.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.