[GRASS5] cygwin/windows port

Andreas Lange Andreas.Lange at Rhein-Main.de
Sat Dec 2 08:22:09 EST 2000


Hi,

i did some more experimentation with the cygwin build of grass and want
to tell my findings here. 

As i told, i can now compile the whole GRASS 5.0beta9 tree on cygwin
without any problems. Thanks to John Huddleston for his great work. 
But i still believe that the cygwin "port" is not ready for a broader
audience, as graphics output is still not usable.

I see the follwing roads to follow for a complete port with graphics
output:

- compile the source as it is under cygwin, including the XDRIVER for
graphics and install the Cygwin port of X11R6.4. This has the problem
that you use grass from an X Window server on Windows, which is
unfamiliar to windows users. And the X11R6.4 port is beta only,
complicated to install and crashes sometimes. And i haven't seen a
tcl/tk port for X Window under Windows yet. So tcltkgrass does not work
right now. Only commandline/XDRIVER. 

- compile under cygwin, create a new windows graphics DRIVER, use
tcltkgrass with the Windows-wish (cygwish). 
I can start tcltkgrass with the cygwish with some modifications. This
would not require to install the X11 system and would run in the windows
graphics, which is a big advantage (familiar usage). 
Writing a graphics driver for windows should not be too complicated for
a windows programmer (i can assist as i already wrote a new driver for
GRASS). But i don't know if it is possible to compile this driver
without MS Visual C++. The headers and API is there, e. g. the cygwish
port uses this setup. 

A third alternative would be to use the parts from the old tcltkgrass
(compiled into a custom wish) for graphics output. But this is not
feasible, as it would require adapting the old code to the new GRASS 5.0
API and re-writing most of tcltkgrass for windows compatibility.

The main problem is that tcltkgrass contains much unix dependend code
(e. g. xwininfo, /dev/null, redirection, usage of ps and kill, etc.), so
that in any case modification of tcltkgrass is needed. And i don't think
that it is wise to split tcltkgrass into an unix and a windows port. 

I will not do any further work on this. If you want to use GRASS for
server side work or only need some isolated functionality, this is ready
for Windows. But not a real GIS product with GUI. 
If some Windows-expirienced people will pick this up i'll help. If
someone is willing to sponsor the development, it would be possible to
do this too.

I think that we should learn from the Mac OS X port and not announce
something that rizes expectations we can not meet (see the discussion on
the Mac OS X list!). GRASS is scientific software and should not be
compared to commercial software. 


Andreas

-- 
Andreas Lange, 65187 Wiesbaden, Germany, Tel. +49 611 807850
Andreas.Lange at Rhein-Main.de - A.C.Lange at GMX.net



---------------------------------------- 
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'



More information about the grass-dev mailing list