[Qgis-developer] GRASS requirements changed

Radim Blazek radim.blazek at gmail.com
Mon Mar 15 16:10:49 EDT 2010


1) GDAL-GRASS driver is no more required, GRASS rasters are accessed
directly using GRASS libs not via GDAL

2) GRASS libraries must be compiled with exceptions support. This was
always required, but it was not explicitly stated in INSTALL.
On Linux with gcc just run GRASS configure with additional CFLAG:
    CFLAGS="-fexceptions" ./configure ....
On windows it seems to work without special options (at least in
osgeo4w, Jef, which compiler are you using?)
I have no idea about OSX, here is small test package
http://trac.osgeo.org/qgis/attachment/ticket/1878/except.tar

The reason for this requirement is, that GRASS G_fatal_error is
calling exit() and the only way to avoid QGIS exit on every error in
GRASS (which does not have to be necessarily fatal for QGIS, e.g.
cannot open layer ...) is to set custom error routine (
G_set_error_routine) which throws c++ exception which is caught in
QGIS-GRASS plugin. To support this, GRASS libs (which are in C) must
be compiled with support for exceptions.

I have modified doc/INSTALL.t2t

Radim


More information about the Qgis-developer mailing list