[GRASS-dev] Re: winGRASS

Hello Paul,
(cc'ing this to the list, so that Paul is not alone...)

On 09/12/06 15:56, Paul Kelly wrote:

Hello Moritz

On Fri, 8 Dec 2006, Moritz Lennert wrote:

Hello Paul,

I'm finally sitting in front of a Windows computer trying to compile GRASS
myself.

On Thu, November 23, 2006 12:38, Paul Kelly wrote:

I had a look at that site; certainly lots of useful information on
building there. E.g. I don't expect they will have the stripped-down XDR
or GDAL or PROJ, and they were the biggest challenges to build properly
anyway.

At this stage I just used ./configure;make;make install, just to see
whether everything seems to work.
I imagine I will need to do some more tweaking, would happen to have
recorded your configure settings somewhere ?

For the other software, no net yet. Some of it I think I just used the Makefiles as the configure script wasn't working on Windows. But I intend to re-build it all from scratch very soon and will take proper notes then.

I've tried to build GRASS having just compiled the other libraries with configure&make&make install.

I get the following error:

c:/Moritz/gdal-cvs-2006.12.07/libgdal.la: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[2]: *** [/c/moritz/grass6/dist.i686-pc-mingw32/lib/libgrass_gproj.6.3.cvs.dll] Error 1

and

c:/Moritz/gdal-cvs-2006.12.07/libgdal.la: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [/c/moritz/grass6/dist.i686-pc-mingw32/lib/libgrass_vect.6.3.cvs.dll] Error 1

which then obviously leads to many errors afterwards.

I have attached the entire make log and the libgdal.la file.

Any ideas of what is wrong with the .la file ?

Also, I've seen some debate on cross-compiling lately. If this is reasonably easy, it would make life easier for me as I would not have to wait for my colleague's windows machine to be free...

Moritz

(attachments)

libgdal.la (797 Bytes)
make.log.gz (63.5 KB)

Hello Moritz
I know I got this working but to be honest I'm not completely sure how. I've made a start on re-doing everything from scratch and making proper notes now that I know it's possible.

I would say you could try configuring GDAL --without-libtool perhaps.
Also some very promising looking hints and tips on libtool on here:
http://gnuwin32.sourceforge.net/compile.html

Paul

On Mon, 11 Dec 2006, Moritz Lennert wrote:

Hello Paul,
(cc'ing this to the list, so that Paul is not alone...)

On 09/12/06 15:56, Paul Kelly wrote:

Hello Moritz

On Fri, 8 Dec 2006, Moritz Lennert wrote:

Hello Paul,

I'm finally sitting in front of a Windows computer trying to compile GRASS
myself.

On Thu, November 23, 2006 12:38, Paul Kelly wrote:

I had a look at that site; certainly lots of useful information on
building there. E.g. I don't expect they will have the stripped-down XDR
or GDAL or PROJ, and they were the biggest challenges to build properly
anyway.

At this stage I just used ./configure;make;make install, just to see
whether everything seems to work.
I imagine I will need to do some more tweaking, would happen to have
recorded your configure settings somewhere ?

For the other software, no net yet. Some of it I think I just used the Makefiles as the configure script wasn't working on Windows. But I intend to re-build it all from scratch very soon and will take proper notes then.

I've tried to build GRASS having just compiled the other libraries with configure&make&make install.

I get the following error:

c:/Moritz/gdal-cvs-2006.12.07/libgdal.la: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[2]: *** [/c/moritz/grass6/dist.i686-pc-mingw32/lib/libgrass_gproj.6.3.cvs.dll] Error 1

and

c:/Moritz/gdal-cvs-2006.12.07/libgdal.la: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [/c/moritz/grass6/dist.i686-pc-mingw32/lib/libgrass_vect.6.3.cvs.dll] Error 1

which then obviously leads to many errors afterwards.

I have attached the entire make log and the libgdal.la file.

Any ideas of what is wrong with the .la file ?

Also, I've seen some debate on cross-compiling lately. If this is reasonably easy, it would make life easier for me as I would not have to wait for my colleague's windows machine to be free...

Moritz

On 11/12/06 16:24, Paul Kelly wrote:

Hello Moritz
I know I got this working but to be honest I'm not completely sure how. I've made a start on re-doing everything from scratch and making proper notes now that I know it's possible.

I would say you could try configuring GDAL --without-libtool perhaps.
Also some very promising looking hints and tips on libtool on here:
http://gnuwin32.sourceforge.net/compile.html

Yes, I read this, especially the section on dynamic libraries, but I have the feeling that most of what they recommend is already present, i.e. .dll files and the mention of libfoo.dll.a in the .la file...

Maybe it's a question of the libtool version...

Moritz

Hello Moritz
I've got a bit further with documenting what I was doing. See attached for some of my notes. Mostly on compiling the accompanying libraries GRASS absolutely needs:
XDR
Zlib
libpng
PROJ.4
GDAL

I put these into a gzipped tar file in case anybody would like to get started quickly - in this case you would just need Msys,Mingw with bison and flex. Everything else included in here:
http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz
and then the prefix where you untar that file you will need to supply to the GRASS configure as:
--with-includes=prefix --with-libs=prefix
FWIW my configure line was:
./configure --prefix=c:/grass --bindir=c:/grass/bin \
--with-includes=/c/grass/forgrass/include \
--with-libs=/c/grass/forgrass/lib --with-cxx --without-jpeg --without-tiff \
--without-postgres --with-opengl=windows --without-fftw --without-x \
--enable-x11=no --enable-shared=yes --with-tcltk-includes=/c/tcl/include \
--with-tcltk-libs=/c/tcl/bin

After compiling you should copy libxdr.dll, libproj.dll, libpng.dll, libgdal-1.dll and libz.dll.1.2.3 into the GRASS lib directory and all the GDAL and PROJ .exe files in the bin directory into the GRASS bin directory, and then you have a more or less self-contained GRASS distribution.

I also installed Activestate Tcl/Tk 8.4.13 (in c:\tcl).

I could make a binary distribution that sort of works OK to a certain extent without having Msys/Mingw installed, only thing is I want to wait until Nviz is working again on Windows as it was up to yesterday. The problem is starting it from a script. Scripts are very problematic (and of course only possible at all if you have Msys installed) because of the way Msys handles Windows paths.

If you have Msys and Mingw installed, putting their bin directories in the PATH makes things in general run more smoothly, but of course that's cheating!

Paul

(attachments)

windows-compile.txt (8.6 KB)

Oh and in case anybody is trying this, you won't get too far with the Windows startup without changing the path to WINGISBASE in grass63.bat (the startup file) to have Windows-style backslash-\ directory separator characters. Can't seem to get the Makefile to put these in but I guess I'll get it working eventually.

On Tue, 12 Dec 2006, Paul Kelly wrote:

Hello Moritz
I've got a bit further with documenting what I was doing. See attached for some of my notes. Mostly on compiling the accompanying libraries GRASS absolutely needs:
XDR
Zlib
libpng
PROJ.4
GDAL

I put these into a gzipped tar file in case anybody would like to get started quickly - in this case you would just need Msys,Mingw with bison and flex. Everything else included in here:
http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz
and then the prefix where you untar that file you will need to supply to the GRASS configure as:
--with-includes=prefix --with-libs=prefix
FWIW my configure line was:
./configure --prefix=c:/grass --bindir=c:/grass/bin \
--with-includes=/c/grass/forgrass/include \
--with-libs=/c/grass/forgrass/lib --with-cxx --without-jpeg --without-tiff \
--without-postgres --with-opengl=windows --without-fftw --without-x \
--enable-x11=no --enable-shared=yes --with-tcltk-includes=/c/tcl/include \
--with-tcltk-libs=/c/tcl/bin

After compiling you should copy libxdr.dll, libproj.dll, libpng.dll, libgdal-1.dll and libz.dll.1.2.3 into the GRASS lib directory and all the GDAL and PROJ .exe files in the bin directory into the GRASS bin directory, and then you have a more or less self-contained GRASS distribution.

I also installed Activestate Tcl/Tk 8.4.13 (in c:\tcl).

I could make a binary distribution that sort of works OK to a certain extent without having Msys/Mingw installed, only thing is I want to wait until Nviz is working again on Windows as it was up to yesterday. The problem is starting it from a script. Scripts are very problematic (and of course only possible at all if you have Msys installed) because of the way Msys handles Windows paths.

If you have Msys and Mingw installed, putting their bin directories in the PATH makes things in general run more smoothly, but of course that's cheating!

Paul

This will be GREAT! Thanks very much.

Michael

On 12/12/06 1:58 PM, "Paul Kelly" <paul-grass@stjohnspoint.co.uk> wrote:

Hello Moritz
I've got a bit further with documenting what I was doing. See attached for
some of my notes. Mostly on compiling the accompanying libraries GRASS
absolutely needs:
XDR
Zlib
libpng
PROJ.4
GDAL

I put these into a gzipped tar file in case anybody would like to get
started quickly - in this case you would just need Msys,Mingw with bison
and flex. Everything else included in here:
http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz
and then the prefix where you untar that file you will need to supply to
the GRASS configure as:
--with-includes=prefix --with-libs=prefix
FWIW my configure line was:
./configure --prefix=c:/grass --bindir=c:/grass/bin \
--with-includes=/c/grass/forgrass/include \
--with-libs=/c/grass/forgrass/lib --with-cxx --without-jpeg --without-tiff \
--without-postgres --with-opengl=windows --without-fftw --without-x \
--enable-x11=no --enable-shared=yes --with-tcltk-includes=/c/tcl/include \
--with-tcltk-libs=/c/tcl/bin

After compiling you should copy libxdr.dll, libproj.dll, libpng.dll,
libgdal-1.dll and libz.dll.1.2.3 into the GRASS lib directory and all the
GDAL and PROJ .exe files in the bin directory into the GRASS bin
directory, and then you have a more or less self-contained GRASS
distribution.

I also installed Activestate Tcl/Tk 8.4.13 (in c:\tcl).

I could make a binary distribution that sort of works OK to a certain
extent without having Msys/Mingw installed, only thing is I want to wait
until Nviz is working again on Windows as it was up to yesterday. The
problem is starting it from a script. Scripts are very problematic (and of
course only possible at all if you have Msys installed) because of the way
Msys handles Windows paths.

If you have Msys and Mingw installed, putting their bin directories in the
PATH makes things in general run more smoothly, but of course that's
cheating!

Paul

__________________________________________
Michael Barton, Professor of Anthropology
School of Human Evolution & Social Change
Center for Social Dynamics and Complexity
Arizona State University

phone: 480-965-6213
fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton

Paul,

On Tue, December 12, 2006 21:58, Paul Kelly wrote:

Hello Moritz
I've got a bit further with documenting what I was doing. See attached for
some of my notes. Mostly on compiling the accompanying libraries GRASS
absolutely needs:
XDR
Zlib
libpng
PROJ.4
GDAL

I put these into a gzipped tar file in case anybody would like to get
started quickly - in this case you would just need Msys,Mingw with bison
and flex. Everything else included in here:
http://www.stjohnspoint.co.uk/grass/wingrass-extralibs.tar.gz
and then the prefix where you untar that file you will need to supply to
the GRASS configure as:
--with-includes=prefix --with-libs=prefix
FWIW my configure line was:
./configure --prefix=c:/grass --bindir=c:/grass/bin \
--with-includes=/c/grass/forgrass/include \
--with-libs=/c/grass/forgrass/lib --with-cxx --without-jpeg --without-tiff
\
--without-postgres --with-opengl=windows --without-fftw --without-x \
--enable-x11=no --enable-shared=yes --with-tcltk-includes=/c/tcl/include \
--with-tcltk-libs=/c/tcl/bin

After compiling you should copy libxdr.dll, libproj.dll, libpng.dll,
libgdal-1.dll and libz.dll.1.2.3 into the GRASS lib directory and all the
GDAL and PROJ .exe files in the bin directory into the GRASS bin
directory, and then you have a more or less self-contained GRASS
distribution.

Great job. Thanks for doing this !

I have had the following issues/questions while trying to go through the
compilation using your tarball of compiled libraries (as comments (Mo:)
within your compile instructions (Pa:)):

Pa: Download and run the MinGW installer. Let it download and install what
it needs.

Mo:

- I imagine I have to tell the installer to install g++ and mingw make ?
- I imagine you just forgot to mention the install of msys ?

Pa: Also install: flex from gnuwin32.sourceforge.net and put flex.exe in
Mingw bin directory

Mo: Why not flex from mingw ? And all I need to do is copy flex.exe,
nothing else ?

Pa: Use bison from Mingw as Gnuwin32 bison looks for libintl3.dll

Mo: I did that, but I get this error:

cannot open file `/msys/share/bison/m4sugar/m4sugar.m4': No such file or
directory
make[3]: *** [y.tab.h] Error 1

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Mo: What about the shared files from proj, such as epsg (in share
directory when ./configure&&make&&make install of proj in msys), they are
not in your tarball

Mo: during compilation, I get many errors concerning unfindable
libz.dll.1.2.3; apparently program tries to launch db.* grass exe files
such as db.columns, etc during compilation. Don't know why.
After copying all files from c:\forgrass\lib to
c:\grasssrc\grass6\dist*\lib no more error messages during compilation.
You mention copying these after compilation. What am I doing wrong ?

Moritz

Hello Moritz
Comments below.

On Wed, 13 Dec 2006, Moritz Lennert wrote:

Great job. Thanks for doing this !

I have had the following issues/questions while trying to go through the
compilation using your tarball of compiled libraries (as comments (Mo:)
within your compile instructions (Pa:)):

Pa: Download and run the MinGW installer. Let it download and install what
it needs.

Mo:

- I imagine I have to tell the installer to install g++ and mingw make ?

Hmm, yes. I wasn't sure but as I recall I ticked those boxes yes. I told you my notes weren't thorough!

- I imagine you just forgot to mention the install of msys ?

I mentioned it after pdcurses - don't recall there being any notable problems with it hence the briefness of the mention!

Pa: Also install: flex from gnuwin32.sourceforge.net and put flex.exe in
Mingw bin directory

Mo: Why not flex from mingw ? And all I need to do is copy flex.exe,
nothing else ?

I couldn't find flex on the Mingw site. Maybe I was blind. Is it there? Yes, just putting the flex.exe in the mingw bin directory worked fine for me.

Pa: Use bison from Mingw as Gnuwin32 bison looks for libintl3.dll

Mo: I did that, but I get this error:

cannot open file `/msys/share/bison/m4sugar/m4sugar.m4': No such file or
directory
make[3]: *** [y.tab.h] Error 1

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Ah OK. I think I hacked about with that a little bit come to think of it. Just put it where it's looking for it :wink:

Mo: What about the shared files from proj, such as epsg (in share
directory when ./configure&&make&&make install of proj in msys), they are
not in your tarball

Good point. I should think there is only that one file affected by that though. Shared files needed by PROJ and GDAL are generally included with GRASS. See earlier discussions on the mailing list today about that EPSG file.

Mo: during compilation, I get many errors concerning unfindable
libz.dll.1.2.3; apparently program tries to launch db.* grass exe files
such as db.columns, etc during compilation. Don't know why.
After copying all files from c:\forgrass\lib to
c:\grasssrc\grass6\dist*\lib no more error messages during compilation.
You mention copying these after compilation. What am I doing wrong ?

Just make sure c:\forgrass\lib is in your PATH before you start compiling and it should be fine. I copy them after compilation just to have everything self-contained for distributing it to others. As long as the DLLs are on your system and in the PATH everything should work.

Also you need to change man/Makefile so it doesn't convert the HTML pages to man. The Makefile should be conditionalised so this is dependent on Perl being installed. Will look at it later.

Thanks a lot for testing this.

Paul

On Wed, December 13, 2006 14:29, Paul Kelly wrote:

Hello Moritz
Comments below.

On Wed, 13 Dec 2006, Moritz Lennert wrote:

Great job. Thanks for doing this !

I have had the following issues/questions while trying to go through the
compilation using your tarball of compiled libraries (as comments (Mo:)
within your compile instructions (Pa:)):

Pa: Download and run the MinGW installer. Let it download and install
what
it needs.

Mo:

- I imagine I have to tell the installer to install g++ and mingw make ?

Hmm, yes. I wasn't sure but as I recall I ticked those boxes yes. I told
you my notes weren't thorough!

no problem, just wanted to make sure.

- I imagine you just forgot to mention the install of msys ?

I mentioned it after pdcurses - don't recall there being any notable
problems with it hence the briefness of the mention!

Sorry, yes. But if I see correctly, pdcurses (already renamed) is in your
tar ball.

Pa: Also install: flex from gnuwin32.sourceforge.net and put flex.exe in
Mingw bin directory

Mo: Why not flex from mingw ? And all I need to do is copy flex.exe,
nothing else ?

I couldn't find flex on the Mingw site. Maybe I was blind. Is it there?
Yes, just putting the flex.exe in the mingw bin directory worked fine for
me.

Here:
http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=82724&release_id=158862
you see flex and bison for msys (I think this might be the problem with my
bison installation: it is for msys and I installed it in the mingw
directory - will try again in msys)

Pa: Use bison from Mingw as Gnuwin32 bison looks for libintl3.dll

Mo: I did that, but I get this error:

cannot open file `/msys/share/bison/m4sugar/m4sugar.m4': No such file or
directory
make[3]: *** [y.tab.h] Error 1

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Ah OK. I think I hacked about with that a little bit come to think of it.
Just put it where it's looking for it :wink:

I'll try as mentioned above. If that doesn't help, I'll move it around.

Mo: What about the shared files from proj, such as epsg (in share
directory when ./configure&&make&&make install of proj in msys), they
are
not in your tarball

Good point. I should think there is only that one file affected by that
though. Shared files needed by PROJ and GDAL are generally included with
GRASS. See earlier discussions on the mailing list today about that EPSG
file.

Ok, so I'll ignore this for now.

Mo: during compilation, I get many errors concerning unfindable
libz.dll.1.2.3; apparently program tries to launch db.* grass exe files
such as db.columns, etc during compilation. Don't know why.
After copying all files from c:\forgrass\lib to
c:\grasssrc\grass6\dist*\lib no more error messages during compilation.
You mention copying these after compilation. What am I doing wrong ?

Just make sure c:\forgrass\lib is in your PATH before you start compiling
and it should be fine. I copy them after compilation just to have
everything self-contained for distributing it to others. As long as the
DLLs are on your system and in the PATH everything should work.

Ok, will try that.

Also you need to change man/Makefile so it doesn't convert the HTML pages
to man. The Makefile should be conditionalised so this is dependent on
Perl being installed. Will look at it later.

Yes, saw an error on that. Will try to figure out how to change the makefile.

Thanks !

Moritz

On 13/12/06 15:03, Moritz Lennert wrote:

On Wed, December 13, 2006 14:29, Paul Kelly wrote:

Pa: Also install: flex from gnuwin32.sourceforge.net and put flex.exe in
Mingw bin directory

Mo: Why not flex from mingw ? And all I need to do is copy flex.exe,
nothing else ?

I couldn't find flex on the Mingw site. Maybe I was blind. Is it there?
Yes, just putting the flex.exe in the mingw bin directory worked fine for
me.

Here:
http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=82724&release_id=158862

used this and it seems for work fine.

Pa: Use bison from Mingw as Gnuwin32 bison looks for libintl3.dll

Mo: I did that, but I get this error:

cannot open file `/msys/share/bison/m4sugar/m4sugar.m4': No such file or
directory
make[3]: *** [y.tab.h] Error 1

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Ah OK. I think I hacked about with that a little bit come to think of it.
Just put it where it's looking for it :wink:

I'll try as mentioned above. If that doesn't help, I'll move it around.

It is installed in c:\msys\1.0\share.
I copied everything to c:\msys\share.

But I still get the same error. When I try to access /msys from within the msys shell window, I also get an error. I actually have to do /c/msys to get there. But I just can't find where the path is coded...

Mo: during compilation, I get many errors concerning unfindable
libz.dll.1.2.3; apparently program tries to launch db.* grass exe files
such as db.columns, etc during compilation. Don't know why.
After copying all files from c:\forgrass\lib to
c:\grasssrc\grass6\dist*\lib no more error messages during compilation.
You mention copying these after compilation. What am I doing wrong ?

Just make sure c:\forgrass\lib is in your PATH before you start compiling
and it should be fine. I copy them after compilation just to have
everything self-contained for distributing it to others. As long as the
DLLs are on your system and in the PATH everything should work.

Ok, will try that.

Works with c:\forgrass\lib and c:\forgrass\bin in the path.

Also you need to change man/Makefile so it doesn't convert the HTML pages
to man. The Makefile should be conditionalised so this is dependent on
Perl being installed. Will look at it later.

Yes, saw an error on that. Will try to figure out how to change the makefile.

I haven't really found out how to change this. Currently the Makefile contains:

# some definitions
SECT = 1
MANDIR = $(GISBASE)/man/man$(SECT)
HTMLDIR = $(GISBASE)/docs/html
HTML2MAN = GRASS_PERL=${PERL} VERSION_NUMBER=${GRASS_VERSION_NUMBER} sh $(GRASS_HOME)/tools/g.html2man/g.html2man

MANPAGES := $(patsubst $(HTMLDIR)/%.html,$(MANDIR)/%.$(SECT),$(wildcard $(HTMLDIR)/*.html))

default: $(MANDIR) $(MANPAGES)

$(MANDIR):
         $(MKDIR) $(MANDIR)

$(MANDIR)/%.$(SECT): $(HTMLDIR)/%.html
         $(HTML2MAN) $< $@ $(SECT)

The problem is in the last line where g.html2man is called. just commenting out the last line doesn't seem to work:

mkdir -p /c/grasssrc/grass6/dist.i686-pc-mingw32/man/man1
make[1]: *** No rule to make target `/c/grasssrc/grass6/dist.i686-pc-mingw32/man/man1/d.ask.1', needed by `default'. Stop.
make[1]: Leaving directory `/c/grasssrc/grass6/man'
make: *** [default] Error 2

Other than that I get a running binary which I can launch from within msys. Launching it with grass63.bat does not seem to work. I don't get the startup screen and I get a message about g.dirsep not being found.

The msys version seems to work quite well (just some basic testing) with one major problem being the lack of dbf driver support because of the bison problem mentioned above...

Getting closer :wink:

Moritz

On Thu, 14 Dec 2006, Moritz Lennert wrote:

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Ah OK. I think I hacked about with that a little bit come to think of it.
Just put it where it's looking for it :wink:

I'll try as mentioned above. If that doesn't help, I'll move it around.

It is installed in c:\msys\1.0\share.
I copied everything to c:\msys\share.

But I still get the same error. When I try to access /msys from within the msys shell window, I also get an error. I actually have to do /c/msys to get there. But I just can't find where the path is coded...

Hmm I think when I had the problem it was looking for /usr/share/bison/... So I don't understand. Must be some installation thing; really don't know.

Yes, saw an error on that. Will try to figure out how to change the makefile.

I haven't really found out how to change this. Currently the Makefile contains:

# some definitions
SECT = 1
MANDIR = $(GISBASE)/man/man$(SECT)
HTMLDIR = $(GISBASE)/docs/html
HTML2MAN = GRASS_PERL=${PERL} VERSION_NUMBER=${GRASS_VERSION_NUMBER} sh $(GRASS_HOME)/tools/g.html2man/g.html2man

MANPAGES := $(patsubst $(HTMLDIR)/%.html,$(MANDIR)/%.$(SECT),$(wildcard $(HTMLDIR)/*.html))

default: $(MANDIR) $(MANPAGES)

$(MANDIR):
       $(MKDIR) $(MANDIR)

$(MANDIR)/%.$(SECT): $(HTMLDIR)/%.html
       $(HTML2MAN) $< $@ $(SECT)

The problem is in the last line where g.html2man is called. just commenting out the last line doesn't seem to work:

You maybe need the line to still start with a Tab, then comment out the rest? I don't know. But tider probably to just delete
$(MANDIR) $(MANPAGES) after default:

Other than that I get a running binary which I can launch from within msys. Launching it with grass63.bat does not seem to work. I don't get the startup screen and I get a message about g.dirsep not being found.

Oops - I forgot to add g.dirseps to the list of modules compiled by default in general/Makefile. If you just change into the g.dirseps directory and run make perhaps it will work after that. Remember to check that you need backslashes in the WINGISBASE path in grass63.bat.

Paul

On Thu, December 14, 2006 16:15, Paul Kelly wrote:

On Thu, 14 Dec 2006, Moritz Lennert wrote:

It is in /mingw/share/bison/m4sugar/m4sugar.m4. I don't know why it
is
looking for it in msys ? This causes an error in the compilation of
libvect and so many consequent errors.

Ah OK. I think I hacked about with that a little bit come to think of
it.
Just put it where it's looking for it :wink:

I'll try as mentioned above. If that doesn't help, I'll move it around.

It is installed in c:\msys\1.0\share.
I copied everything to c:\msys\share.

But I still get the same error. When I try to access /msys from within
the
msys shell window, I also get an error. I actually have to do /c/msys to
get
there. But I just can't find where the path is coded...

Hmm I think when I had the problem it was looking for /usr/share/bison/...
So I don't understand. Must be some installation thing; really don't know.

Solved th

Yes, saw an error on that. Will try to figure out how to change the
makefile.

I haven't really found out how to change this. Currently the Makefile
contains:

# some definitions
SECT = 1
MANDIR = $(GISBASE)/man/man$(SECT)
HTMLDIR = $(GISBASE)/docs/html
HTML2MAN = GRASS_PERL=${PERL} VERSION_NUMBER=${GRASS_VERSION_NUMBER} sh
$(GRASS_HOME)/tools/g.html2man/g.html2man

MANPAGES := $(patsubst $(HTMLDIR)/%.html,$(MANDIR)/%.$(SECT),$(wildcard
$(HTMLDIR)/*.html))

default: $(MANDIR) $(MANPAGES)

$(MANDIR):
       $(MKDIR) $(MANDIR)

$(MANDIR)/%.$(SECT): $(HTMLDIR)/%.html
       $(HTML2MAN) $< $@ $(SECT)

The problem is in the last line where g.html2man is called. just
commenting
out the last line doesn't seem to work:

You maybe need the line to still start with a Tab, then comment out the
rest? I don't know. But tider probably to just delete
$(MANDIR) $(MANPAGES) after default:

Other than that I get a running binary which I can launch from within
msys.
Launching it with grass63.bat does not seem to work. I don't get the
startup
screen and I get a message about g.dirsep not being found.

Oops - I forgot to add g.dirseps to the list of modules compiled by
default in general/Makefile. If you just change into the g.dirseps
directory and run make perhaps it will work after that. Remember to check
that you need backslashes in the WINGISBASE path in grass63.bat.

Paul