[winGRASS] Re: [GRASS-user] Re: Cygwin winGRASS 6.2 Errors!

Glynn Clements glynn at gclements.plus.com
Thu Feb 15 06:44:03 EST 2007


Hamish wrote:

> > The above behaviour (program does nothing) used to occur when building
> > with DLLs.
> > 
> > Unfortunately, it works on my system, so I probably can't be of much
> > help in tracking down the problem.
> 
> I'll install gdb + cygwin's version of ldd* and see if I can find
> anything. You didn't optimize & strip the binaries did you?

I used the default flags, i.e. "-g -O2". So, the binaries will have
debug info, but will also be optimised.

FWIW, the complete configure command is:

./configure --with-proj-share=/usr/share/proj --with-cxx --with-motif
	--with-freetype --with-nls --with-readline
	--with-freetype-includes=/usr/include/freetype2 --with-postgres
	--with-tcltk-includes=/usr/local/include
	--with-tcltk-libs=/usr/local/lib

> looking at the programs which didn't build, it seems to be a problem
> with these libs:
> $(GPROJLIB)
> $(VECTLIB)

Both require GDAL, which requires a load of stuff; in this case:

glynn at WXP:~ $ cygcheck /usr/local/bin/cyggdal-1.dll 
C:/cygwin/usr/local/bin/cyggdal-1.dll
  C:\cygwin\bin\cygwin1.dll
    C:\WINDOWS\system32\ADVAPI32.DLL
      C:\WINDOWS\system32\ntdll.dll
      C:\WINDOWS\system32\KERNEL32.dll
      C:\WINDOWS\system32\RPCRT4.dll
  C:\cygwin\bin\cygjasper-1-701-1.dll
    C:\cygwin\bin\cygjpeg-62.dll
  C:\cygwin\bin\cygpng12.dll
    C:\cygwin\bin\cygz.dll
  C:\cygwin\bin\cygpq.dll
    C:\cygwin\bin\cygcrypt-0.dll
    C:\cygwin\bin\cygcrypto-0.9.8.dll
    C:\cygwin\bin\cygintl-3.dll
      C:\cygwin\bin\cygiconv-2.dll
    C:\cygwin\bin\cygssl-0.9.8.dll
  C:\cygwin\bin\cygtiff-5.dll

For a sample program:

glynn at WXP:~ $ cygcheck /usr/local/grass-6.2.1/bin/g.proj
C:/cygwin/usr/local/grass-6.2.1/bin/g.proj
  C:\cygwin\bin\cygwin1.dll
    C:\WINDOWS\system32\ADVAPI32.DLL
      C:\WINDOWS\system32\ntdll.dll
      C:\WINDOWS\system32\KERNEL32.dll
      C:\WINDOWS\system32\RPCRT4.dll
  C:\cygwin\bin\cygproj-0.dll
  C:\cygwin\usr\local\bin\cyggdal-1.dll
    C:\cygwin\bin\cygjasper-1-701-1.dll
      C:\cygwin\bin\cygjpeg-62.dll
    C:\cygwin\bin\cygpng12.dll
      C:\cygwin\bin\cygz.dll
    C:\cygwin\bin\cygpq.dll
      C:\cygwin\bin\cygcrypt-0.dll
      C:\cygwin\bin\cygcrypto-0.9.8.dll
      C:\cygwin\bin\cygintl-3.dll
        C:\cygwin\bin\cygiconv-2.dll
      C:\cygwin\bin\cygssl-0.9.8.dll
    C:\cygwin\bin\cygtiff-5.dll
  C:\cygwin\usr\local\grass-6.2.1\lib\libgrass_gis.6.2.1.dll
    C:\cygwin\bin\cygintl-8.dll
    C:\cygwin\usr\local\grass-6.2.1\lib\libgrass_datetime.6.2.1.dll
  C:\cygwin\usr\local\grass-6.2.1\lib\libgrass_gproj.6.2.1.dll

IOW, everything GDAL needs, plus cygproj-0.dll and cygintl-8.dll.

> $(IMAGERYLIB)
> $(GMATHLIB)

IMAGERYLIB requires GMATHLIB, which requires FFTW.

> Interesting, the order of libs in the Makefile is causing trouble:
> 
> #doesn't work
> PGM = i.pca
> LIBES     = $(IMAGERYLIB) $(GMATHLIB) $(GISLIB)
> 
> #works
> PGM = i.his.rgb
> LIBES     = $(IMAGERYLIB) $(GISLIB) $(GMATHLIB)

Actually, the first one is correct, although the only libgis functions
which the gmath library uses are the standard utilities (G_malloc,
G_fatal_error etc), which will get pulled in anyhow.

> > FWIW; here is the output from "env | sort":
> 
> will diff for anything obvious.
> 
> by the way, exit code 53 is missing DLLs:
>   http://www.cygwin.com/ml/cygwin/2006-10/msg00921.html

That figures. It would be nice if it told you that, or which ones were
missing.

-- 
Glynn Clements <glynn at gclements.plus.com>




More information about the grass-user mailing list