[GRASSLIST:1763] Re: cygwin peculiarities

Richard Greenwood Rich at GreenwoodMap.com
Fri Nov 14 09:35:06 EST 2003


Glynn, et al;

I believe that I have found the root of the problem that I outline in the 
email below. I had been using WinZip to un-compress and un-tar the source 
archive. WinZip apparently converts UNIX \n into DOS \n\r in files that it 
identifies as text. I wouldn't think this should matter for C source files, 
but I am guessing that there may be some files that are sensitive to this.

If I use gzip and tar to unpack the archive before I build, then the 
resulting binaries do not exhibit the problem. I have been bitten by this 
conversion enough times in the past that I should have know better!

Regards,
Rich


At 06:02 AM 11/10/2003, you wrote:


>Richard Greenwood wrote:
>
> > Hello kind list;
> >
> > I am seeing some odd display behavior in the cygwin bash shell with
> > versions 5.0.2 and 5.0.3 that I have compiled myself, but not with the
> > distributed 5.0.2 cygwin binaries. Below is an example from the g.remove
> > command, but similar problems exhibit themselves in other commands e.g.
> > g.region.  The problem is that part of the left portion of the line 
> most of
> > the lines are missing.
> >
> > 5.0.2 compiled by me (missing left'ly chars):
> >
> >      GRASS:~ > g.remove fsh2b
> >      REMOVE [fsh2b]
> >       raster
> >         ader
> >       category
> >          or
> >        istory
> >
> >          MISSING
> >        MISSING
> >
> > 5.0.2 binary distribution (correct):
> >
> >      GRASS:~ > g.remove msh2b
> >      REMOVE [msh2b]
> >       raster
> >       header
> >       category
> >       color
> >       history
> >       misc
> >       fcell    MISSING
> >       g3dcell  MISSING
> >
> > I have the newest (possibly too new?) cygwin distribution. Most of the 
> text
> > appears correctly, and all of the modules that I have used appear to
> > correctly. Is there a library that is used for this semi-formatted text
> > that may be out of sync on my system? Or another area that I should 
> explore?
>
>The code which produces the above listing is in
>src/general/manage/lib/do_remove.c:
>
>     for (i = 0; i < list[n].nelem; i++)
>     {
>         fprintf (stdout," %-*s ", len, list[n].desc[i]);
>         fflush (stdout);
>
>         switch (G_remove (list[n].element[i], old))
>         {
>         case -1: fprintf (stdout,"COULD NOT REMOVE"); break;
>         case  0: fprintf (stdout,"MISSING"); break;
>         }
>         fprintf (stdout,"\n");
>     }
>
>It appears that fprintf() isn't handling "%-*s" correctly.
>
>I'm not sure how you could get different behaviour for different
>builds of GRASS.
>
>--
>Glynn Clements <glynn.clements at virgin.net>


Richard W. Greenwood, PLS
Greenwood Mapping, Inc.
Rich <at> GreenwoodMap <dot> com
(307) 733-0203
http://www.GreenwoodMap.com 


More information about the grass-user mailing list