[GRASS-dev] Re: windows binaries

Paul Kelly paul-grass at stjohnspoint.co.uk
Tue Nov 7 16:49:30 EST 2006

Hello Moritz

On Tue, 7 Nov 2006, Moritz Lennert wrote:

> Hello Paul,
> Are you planning on publishing wingrass binaries at any point ? And could you

I guess I would if I think it's working well enough. If I got it to a 
stage where there was one zip file you could unzip anywhere, and an 
easy-to-edit Windows batch/command file to put a few paths into and save 
somewhere, I would consider that working well enough!

> maybe post details of all you did to compile wingrass (which other packages 
> have to be installed, which configure flags, etc) ?

OK don't have much time to say now but basically I followed Glynn's 
instructions posted to the list a week or two ago, with the difference 
that I was able to get shared libraries working OK. I haven't tried 
relocating anything or installing it on a different machine, or one 
wiithout Msys - that's a big challenge. You need to install Mingw and Msys 
to give you the build environment, and then you run configure and make 
from within there. But once compiled you don't need to run GRASS from 
within the Msys environment. There are a few places in the source code 
where the assumption "Msys == Windows" has been made in the past and it's 
so tedious tracking them down!

I compiled and installed xdr lib, zlib and png lib in the Mingw 
lib/include directories. Used proj-4.5.0 and GDAL CVS from 2006-10-29 - 
the latest stable version of GDAL didn't work. I can't find any notes of 
my configure options from compiling those so I guess they weren't too 

Apart from Glynn's list I also installed Activestate Tcl. It seemed like a 
genuine native Windows Tcl version with no Cygwin or Msys influences so I 
thought it would be a good robust test. My configure options were:
./configure --prefix=c:/grass --bindir=c:/grass/bin \
--with-includes=/c/grass/include --with-libs=/c/grass/lib --with-cxx \
--without-jpeg --without-tiff --without-postgres --without-opengl \
--without-fftw --without-x --enable-x11=no --enable-shared=yes \
--with-tcltk-includes=/c/tcl/include --with-tcltk-libs=/c/tcl/bin

> As I said, I will have a bit more time in the near future and am more than 
> willing to help with wingrass.
> For our needs here I will at one point have to attack the challenge of 
> rewriting d.vect.thematic in C, but maybe we should make the current GRASS 
> version work reasonably well before going for that.

Didn't I read that d.vect.thematic needs the PNG driver to work. Have to 
confess that I'm not sure what it does - could it use ps.map? Anyway it 
won't be working on Windows in the near future so would be worthwhile I'm 

> Please tell me what you think would be a priority for me to work on.

I guess when people start using the native Windows they will mostly be 
doing it from the GUI and when things go wrong the error messages won't be 
entirely obvious. So it might be a good idea to investigate as much as 
possible from the command line whether most modules are working normally. 
Maybe the test suite could be useful. I came across loads of issues just 
while testing a few of my favourite modules. Look out for strange things 
like text strings apparently over-writing each other - caused by 
extraneous carriage return characters read in from text lines with \r\n 
line-endings. And pathnames and when the windows-style with backslashes 
absolutely has to be used is another useful thing to look out for. Trying 
to run things from a cmd.exe prompt rather than /bin/sh is probably 
helpful for looking out for native Windows issues.


More information about the grass-dev mailing list