I followed installation instructions of ruinaudio.com/xorg-cvs-howto.txt, but make World failed, xmlconfig.c:34:19: expat.h: No such file or directory xmlconfig could not compile because of this. expat.h is indeed present, /usr/src/xc/extras/expat/lib/expat.h but is not being found. Is there a problem with the Makefile? I'm running 2.6.9 kernel on debian testing version
install the expat development headers first.
In my case, expat.h _is_ installed, but I suspect the compilation doesn't include the path. gcc -m32 -c -O2 -fno-strength-reduce -fno-strict-aliasing -ansi -pedantic -Wall -Wpointer-arith -Wundef -I../../../../../../exports/include/X11 -I../../../../ ../../include/extensions -I../../../../../../extras/Mesa/src/mesa -I../../../../../../extras/Mesa/src/mesa/main -I../../../../../../extr as/Mesa/src/mesa/shader -I../../../../../../extras/Mesa/src/mesa /glapi -I../../../../../../extras/Mesa/src/mesa/drivers/dri/common -I../../../../../../extras/Mesa/src/mesa/drivers/dri/../common -I../../../../../../extras/Mesa/include -I../../../../../../lib/ GL/dri -I../../../../../../exports/include/X11 -I../../ ../../../../lib/GL/glx -I../../../../../../lib/GL/include -I../../../../../../programs/Xserver/GL/dri -I../../../../../../prog rams/Xserver/hw/xfree86/os-support -I../../../../../../programs/Xse rver/hw/xfree86/common -I../../../../../../lib/GL/dri/drm -I../../../../../../lib/GL/include -I../../../../../../extras/drm/s hared -I../../../../../.. -I../../../../../../exports/include -Dlinux -D__i3 86__ -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 -DMALLOC_0_RETURNS_NULL -DG LXEXT -DXF86DRI -DGLX_DIRECT_RENDERING -DGLX_USE_DLOPEN -DGLX_USE_MESA -DX_BYTE _ORDER=X_LITTLE_ENDIAN -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM xmlconfig.c xmlconfig.c:34:19: expat.h: No such file or directory xmlconfig.c:139: warning: type defaults to `int' in declaration of `XML_Char' xmlconfig.c:139: error: parse error before '*' token locate expat.h gives: /usr/X11R6/include/expat.h
I had the same problem. Compilation faild with the same error, although expat.h could be found in /usr/X11R6/include/expat.h. Solution on my debian sarge system: apt-get install libexpat1-dev After that compilation has finished without any errors.
The current CVS builds assume for most platforms that expat is already installed and found in /usr/include & /usr/lib. If you've installed it elsewhere, add a line to xc/config/host.def to tell it where: #define ExpatDir /usr/X11R6 If you don't have it installed at all, and want to use the older version found in the Xorg source tree instead, put this in host.def: #define HasExpat NO (This is probably a bug in the BUILD instructions for not explaining this clearly since the change made after 6.8 to assume expat, freetype, & zlib were all already installed with prefix=/usr.)
adding to the 7.0 doc tracker.
BUILD now says: The monolithic tree also includes copies of some packages maintained outside the X.Org project for convenience in building on machines that do not already have them installed. These include FreeType 2, fontconfig, expat, xterm, and zlib. For most uses however, it is recommended that you install the latest version directly from the main distribution site, or use the packages provided in your operating system, as they are more likely to be up to date with the latest bug fixes and security patches. Depending on your platform, use of the bundled versions may be enabled or disabled by default, check the Imake configuration files for your platform in xc/config/cf to find out. To override the defaults for your platform or to set the path to the installa- tion location, see the instructions below on configuring the source via xorgsite.def and host.def. xorgsite.def has: /* * Most platforms default to using an already installed Expat library. * To use the one included in this release instead, uncomment the following. * #define HasExpat NO */ /* * To use a Expat library already installed outside the default search * paths, uncomment the following and set the path as needed. #define HasExpat YES #define ExpatDir /usr/local */ Hopefully that's clear enough to call this 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.