From: Wheeler, Fred (Research) <wheeler@cr...> - 2002-06-09 14:10:11
I now have VXL building well in Cygwin using cmake, GNU make, and gcc 2.95.3-5. I have in the end
found a surprisingly minimal set of changes that makes this work. The trick is to unset WIN32 (the
CMake variable) and to not set VGUI_MESA (the C++ preprocessor variable). CMake normally sets WIN32,
UNIX and CYGWIN under Cygwin, but much of VXL assumes that if WIN32 is set you are in a regular
Windows environment and have MFC, are using MSVC++, have certain libs, etc. Turning off WIN32 makes
VXL build as if in a Unix environment, which Cygwin provides. Execs created in this manner depend on
cygwin.dll, of course. VGUI_MESA must be unset to prevent inclusion of xmesa.h, which is not
distributed with Cygwin.
WIN32 will be unset in the top level CMakeLists file when CYGWIN is set and when the OPTION
CYGWIN_UNSET_WIN32 is true (false by default). My changes should not effect anyone else.
The build has no errors, a few warnings in v3p, and 3 tests that fail. So, I'll start submitting a
vgui builds with this setup, but no vgui implementation does. Well, libvgui_X.a builds, but I don't
think that is a complete vgui implementation. If anybody knows of an implementation that has some
possibility of working under Cygwin I'll try to get it working. Below is what I know about each of
the implementations w.r.t. Cygwin. Can anyone fill in any of the gaps. Might any of these work?
Does not having xmesa preclude any/all of these?
X: Using X requires using XMesa. Cygwin XMesa (XFree86) not right for VXL
gtk: Cygwin does not have a ready to go distribution
mfc: Bill Hoffman says gcc will not be able to link with MFC
qt: Qt web page says Windows supported but only with MSVC++ compiler
The cmake options I'm using are:
-G"Unix Makefiles" \
-DCMAKE_C_FLAGS:STRING="-g -O2" \
-DCMAKE_CXX_FLAGS:STRING="-g -O2" \
On Sun, Jun 09, 2002 at 10:09:58AM -0400, Wheeler, Fred (Research) wrote:
> vgui builds with this setup, but no vgui implementation does. Well,
> libvgui_X.a builds, but I don't think that is a complete vgui
> implementation. If anybody knows of an implementation that has some
> possibility of working under Cygwin I'll try to get it working.
I think the glut-based implementation should build. It won't provide
much of an interface, but at least vgui programs will compile.
Thanks much, Fred, for the addition to the dashboard.