This is the mail archive of the
cygwin-xfree
mailing list for the Cygwin XFree86 project.
Re: Problem trying to build Cygwin X server from source
- From: Mark Lillibridge <mdl at alum dot mit dot edu>
- To: cygwin-xfree <cygwin-xfree at cygwin dot com>
- Date: Sun, 20 Oct 2013 15:57:44 -0700
- Subject: Re: Problem trying to build Cygwin X server from source
- Authentication-results: sourceware.org; auth=none
- Reply-to: cygwin-xfree at cygwin dot com
- Reply-to: mdl at alum dot mit dot edu
Jon TURNEY <jon.turney@dronecode.org.uk> writes:
> On 19/10/2013 20:54, Mark Lillibridge wrote:
> >
> > This is xserver-cygwin-1.14.3-1, the latest as of several weeks ago.
> >
> > The part that is failing (make done in
> > /usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin/glx):
> >
> > CC wgl_ext_api.lo
> > In file included from wgl_ext_api.c:72:0:
> > generated_wgl_wrappers.c:79:1: error: unknown type name 'PFNWGLDXSETRESOURCESHAREHANDLENVPROC'
> > generated_wgl_wrappers.c:79:1: warning: initialization makes integer from pointer without a cast [enabled by default]
> > generated_wgl_wrappers.c:80:1: error: unknown type name 'PFNWGLDXOPENDEVICENVPROC'
> > generated_wgl_wrappers.c:80:1: warning: initialization makes integer from pointer without a cast [enabled by default]
> > generated_wgl_wrappers.c:81:1: error: unknown type name 'PFNWGLDXCLOSEDEVICENVPROC'
> > generated_wgl_wrappers.c:81:1: warning: initialization makes integer from pointer without a cast [enabled by default]
> > ...
>
> I think this is error is due to the khronos-opengl-registry package being more
> recent than the wglext.h provided by w32api-headers.
>
> I think the easiest way to work around this is to update wglext.h from
> http://www.opengl.org/registry/api/GL/wglext.h
Hmmm. Which occurrence should I replace?
mdl [103]# find /usr -name wglext.h -print
/usr/i686-w64-mingw32/sys-root/mingw/include/GL/wglext.h
/usr/include/GL/wglext.h
/usr/include/w32api/GL/wglext.h
/usr/x86_64-w64-mingw32/sys-root/mingw/include/GL/wglext.h
mdl [112]# grep wglext *
wgl_ext_api.c:#include <GL/wglext.h>
wgl_ext_api.h:#include <GL/wglext.h>
mdl [118]# grep usr/include *
Makefile:DBUS_CFLAGS = -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include
Makefile:DIX_CFLAGS = -DHAVE_DIX_CONFIG_H $(CWARNFLAGS) -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/pixman-1 -I/usr/include/freetype2 -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/Xext -I$(top_srcdir)/composite -I$(top_srcdir)/damageext -I$(top_srcdir)/xfixes -I$(top_srcdir)/Xi -I$(top_srcdir)/mi -I$(top_srcdir)/miext/sync -I$(top_srcdir)/miext/shadow -I$(top_srcdir)/miext/damage -I$(top_srcdir)/render -I$(top_srcdir)/randr -I$(top_srcdir)/fb -I$(top_srcdir)/dbe
Makefile:PIXMAN_CFLAGS = -I/usr/include/pixman-1
Makefile:XSERVERCFLAGS_CFLAGS = -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/pixman-1 -I/usr/include/freetype2
Makefile:XSERVERLIBS_CFLAGS = -I/usr/include/pixman-1 -I/usr/include/freetype2
Makefile:oldincludedir = /usr/include
mdl [119]# grep mingw/include *
I'm guessing from the above that it's this one:
/usr/include/GL/wglext.h
I replaced that one and the code in
/usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin/glx
now compiles. Unfortunately, code now fails elsewhere:
cd /usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin
make
gives:
...
make[2]: Leaving directory `/usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin/winclipboard'
Making all in .
make[2]: Entering directory `/usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin'
CC InitInput.o
CC InitOutput.o
InitOutput.c: In function âddxGiveUpâ:
InitOutput.c:240:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
InitOutput.c: In function âwinCheckMntOptâ:
InitOutput.c:284:16: warning: cast discards â__attribute__((const))â qualifier from pointer target type [-Wcast-qual]
CC winallpriv.o
CC winauth.o
In file included from /usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../include/w32api/winsock2.h:56:0,
from /usr/include/X11/Xwinsock.h:55,
from /usr/include/X11/Xpoll.h:163,
from ../../os/osdep.h:85,
from winauth.c:39:
/usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../include/w32api/psdk_inc/_fd_types.h:100:2: warning: #warning "fd_set and associated macros have been defined in sys/types. This can cause runtime problems with W32 sockets" [-Wcpp]
In file included from /usr/include/X11/Xwinsock.h:55:0,
from /usr/include/X11/Xpoll.h:163,
from ../../os/osdep.h:85,
from winauth.c:39:
/usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../include/w32api/winsock2.h:995:34: error: conflicting types for âselectâ
In file included from /usr/include/cygwin/sys_time.h:13:0,
from /usr/include/sys/time.h:61,
from /usr/include/sys/_default_fcntl.h:186,
from /usr/include/sys/fcntl.h:3,
from /usr/include/fcntl.h:14,
from /usr/include/X11/Xos.h:88,
from win.h:152,
from winauth.c:35:
/usr/include/sys/select.h:31:5: note: previous declaration of âselectâ was here
In file included from /usr/include/X11/Xwinsock.h:55:0,
from /usr/include/X11/Xpoll.h:163,
from ../../os/osdep.h:85,
from winauth.c:39:
/usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../include/w32api/winsock2.h:1004:34: error: conflicting types for âgethostnameâ
In file included from /usr/include/unistd.h:4:0,
from /usr/include/X11/Xos.h:89,
from win.h:152,
from winauth.c:35:
/usr/include/sys/unistd.h:238:6: note: previous declaration of âgethostnameâ was here
winauth.c: In function âwinGenerateAuthorizationâ:
winauth.c:132:38: warning: passing argument 2 of âGenerateAuthorizationâ discards âconstâ qualifier from pointer target type [enabled by default]
winauth.c:108:1: note: expected âchar *â but argument is of type âconst char *â
winauth.c: In function âwinSetAuthorizationâ:
winauth.c:189:23: warning: passing argument 1 of âXSetAuthorizationâ discards âconstâ qualifier from pointer target type [enabled by default]
winauth.c:42:13: note: expected âchar *â but argument is of type âconst char *â
Makefile:966: recipe for target `winauth.o' failed
make[2]: *** [winauth.o] Error 1
make[2]: Leaving directory `/usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin'
Makefile:1082: recipe for target `all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/xorg-server-1.14.3-1/src/xserver-cygwin-1.14.3-1/hw/xwin'
Makefile:805: recipe for target `all' failed
make: *** [all] Error 2
> > Any suggestions? The online documentation is seriously out of date,
> > predating the use of cygport.
>
> Which documentation, specifically?
Hmmm. You didn't just update the documentation on me did you? The
versions Google is giving me now are up-to-date.
Page 9 of http://x.cygwin.com/docs/cg/cygwin-x-cg.pdf says:
Tip: Use setup -q -Ppackagename,packagename,etc. to quickly install
the required packages.
Darn if I could make this work no matter what I tried. Really, you
should just give the actual code here so people can cut-and-paste.
Ideally, you should also specify how to get the needed packages via the
setup GUI.
- Mark
--
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/