This is the mail archive of the
cygwin-xfree
mailing list for the Cygwin XFree86 project.
Fwd: Bootstrapping Emacs (trunk) with GCC >= 4.5.1 [Cygwin]
- From: Angelo Graziosi <angelo dot graziosi at alice dot it>
- To: XCygwin <cygwin-xfree at cygwin dot com>
- Date: Tue, 03 Aug 2010 14:09:12 +0200
- Subject: Fwd: Bootstrapping Emacs (trunk) with GCC >= 4.5.1 [Cygwin]
- Reply-to: cygwin-xfree at cygwin dot com
-------- Messaggio originale --------
Oggetto: Bootstrapping Emacs (trunk) with GCC >= 4.5.1 [Cygwin]
Data: Tue, 03 Aug 2010 13:50:09 +0200
Mittente: Angelo Graziosi
A: Emacs <emacs-devel AT gnu DOT org>
On Cygwin, I have tried to bootstrap Emacs-trunk using gcc-4.5.1 (just
released) and gcc-4.6-20100731 (snapshot), but the build fails as follows:
===================================================================
[...]
gcc-4.6 -c -Demacs -DHAVE_CONFIG_H -I. -I/tmp/emacs/src -D_REENTRANT
-I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0
-I/usr/include/cairo -I/usr/include/pango-1.0
-I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -I/usr/include/pixman-1
-I/usr/include/freetype2 -I/usr/include/libpng12
-I/usr/include/freetype2 -D_REENTRANT -I/usr/include/librsvg-2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/gtk-2.0 -I/usr/include/cairo -I/usr/include/pixman-1
-I/usr/include/freetype2 -I/usr/include/libpng12
-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -DORBIT2=1
-D_REENTRANT -I/usr/include/gconf/2 -I/usr/include/orbit-2.0
-I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -MMD -MF
deps/xfns.d -Wold-style-definition -Wdeclaration-after-statement
-Wno-pointer-sign -g -O2 /tmp/emacs/src/xfns.c
In file included from /usr/include/X11/Xos.h:146:0,
from /tmp/emacs/src/xfaces.c:277:
/usr/include/X11/Xarch.h:43:30: fatal error: sys/byteorder.h: No such
file or directory
compilation terminated.
make[2]: *** [xfaces.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/tmp/emacs/Work/src'
make[1]: *** [src] Error 2
make[1]: Leaving directory `/tmp/emacs/Work'
make: *** [bootstrap] Error 2
===================================================================
The culprit are these statements in '/usr/include/X11/Xarch.h':
[...]
# if defined(SVR4) || defined(__SVR4)
# include <sys/byteorder.h>
# elif [...]
On Cygwin, it seems that the
if defined(SVR4)...
branch is executed and the header 'byteorder.h' is not found because it
lives in /usr/include/asm not in /usr/include/sys!
Now I have tried the same on GNU/Linux Kubuntu 10.04, on which that
header, 'byteorder.h', lives in the same /usr/include/asm directory as
on Cygwin, but the bootstrap passes, almost surely because the 'elif'
branch is executed!
So, on Cygwin, I adopted the workaround to create a symbolic link:
cd /usr/include/sys
ln -sf ../asm/byteorder.h byteorder.h
Now the bootstrap (with GCC >= 4.5.1) passes also on Cygwin, and works.
Have you better ideas on this issue?
Thanks,
Angelo.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://x.cygwin.com/docs/
FAQ: http://x.cygwin.com/docs/faq/