[GRASS-dev] Re: [GRASS-SVN] r37136 - grass/branches/develbranch_6/lib/gis

Markus Neteler neteler at osgeo.org
Mon May 11 01:34:27 EDT 2009


On Mon, May 11, 2009 at 1:02 AM,  <svn_grass at osgeo.org> wrote:
> Author: hamish
> Date: 2009-05-10 19:02:37 -0400 (Sun, 10 May 2009)
> New Revision: 37136
>
> Modified:
>   grass/branches/develbranch_6/lib/gis/gisinit.c
> Log:
> be a bit more blunt in the error message
>
> Modified: grass/branches/develbranch_6/lib/gis/gisinit.c
> ===================================================================
> --- grass/branches/develbranch_6/lib/gis/gisinit.c      2009-05-10 21:07:36 UTC (rev 37135)
> +++ grass/branches/develbranch_6/lib/gis/gisinit.c      2009-05-10 23:02:37 UTC (rev 37136)
> @@ -51,7 +51,8 @@
>     G_set_program_name(pgm);
>
>     if (strcmp(version, GIS_H_VERSION) != 0)
> -        G_fatal_error(_("Incompatible library version for module"));
> +        G_fatal_error(_("Incompatible library version for module. "
> +                       "You need to rebuild GRASS."));

I added this already in 2008 but Glynn commented like this:


On Tue, Sep 9, 2008 at 12:10 AM, Glynn Clements
<glynn at gclements.plus.com> wrote:
>
> This:
>        http://trac.osgeo.org/grass/changeset/33327
>
> -       G_fatal_error(_("Incompatible library version for module"));
> +       G_fatal_error(_("Incompatible library version for module: recompilation needed."));
>
> isn't necessarily accurate.
>
> The error could also be caused by a mismatch between PATH and
> LD_LIBRARY_PATH (or ld.so.cache, etc) if you have more than one
> version of GRASS installed.
>
> Or it could be caused by a module linking against GDAL, where GDAL was
> built against an old version of GRASS. In that case, it's true that
> recompilation is needed, but it would be GDAL that needs
> recompilation.
>
> In general, error messages should only report what is known; they
> shouldn't attempt to guess as the underlying cause.
>
> E.g. if write() fails, then you know that write() failed. You don't
> know that it was due to insufficient disk space unless errno is set to
> ENOSPC. write() can also fail with EDQUOT (quota exceeded), EFBIG
> (maximum size of a single file exceeded), EIO (low-level I/O error,
> e.g. media fault, failed NFS server), and others.
>
> --
> Glynn Clements <glynn at gclements.plus.com>
> _______________________________________________
> grass-dev mailing list
> grass-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev
>


Still I tend to actually have the message improved since the
minimalistic notification regularly confuses people.

Markus


More information about the grass-dev mailing list