[GRASS-user] grass65: Invalid argument: can't _spawnl

hi,

grass65devel self-compiled in the osgeo4w-stack on winvista
nc-dataset
rev39115

when i add i.e. the hospital-vector-data to the map-display, i get the following error message in the wx-gui:

"Traceback (most recent call last):
  File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\menuform.py", line 1463, in OnUpdateDialog

fn(**kwargs)
  File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 647, in InsertColumns

dbInfo = VectorDBInfo(vector)
  File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 404, in __init__

self.__DescribeTables() # -> self.tables
  File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 426, in __DescribeTables

database = self.layers[layer]["database"])['cols']:
  File "c:/OSGeo4W/apps/grass/grass-6.5.svn\etc\python\grass
\script\db.py", line 50, in db_describe

grass.fatal(_("Unable to describe table <%s>") % table)
NameError
:
global name 'grass' is not defined"

and on the msys-command line (where i started grass65 with grass65 -wxpython):

"GRASS 6.5.svn (nc_spm_08):c:/osgeo4w/apps/grass/bin > Invalid argument: can't _spawnl
ERROR: Unable to start driver <dbf>"

and i can't open the attribute table of the hospital-vector.

the same procedure with grass64svn delivered with osgeo4w-stack there no such error message and the attribute-table can be opened.

best regards
helmut

________________________________________________________________
Neu: WEB.DE Doppel-FLAT mit Internet-Flatrate + Telefon-Flatrate
für nur 19,99 Euro/mtl.!* http://produkte.web.de/go/02/

On Thu, Sep 10, 2009 at 9:14 PM, Helmut Kudrnovsky <hellik@web.de> wrote:

hi,

grass65devel self-compiled in the osgeo4w-stack on winvista
nc-dataset
rev39115

when i add i.e. the hospital-vector-data to the map-display, i get the following error message in the wx-gui:

"Traceback (most recent call last):
File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\menuform.py", line 1463, in OnUpdateDialog

fn(**kwargs)
File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 647, in InsertColumns

dbInfo = VectorDBInfo(vector)
File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 404, in __init__

self.__DescribeTables() # -> self.tables
File "c:\OSGeo4W\apps\grass\grass-6.5.svn\etc\wxpython\gui
_modules\gselect.py", line 426, in __DescribeTables

database = self.layers[layer]["database"])['cols']:
File "c:/OSGeo4W/apps/grass/grass-6.5.svn\etc\python\grass
\script\db.py", line 50, in db_describe

grass.fatal(_("Unable to describe table <%s>") % table)
NameError
:
global name 'grass' is not defined"

and on the msys-command line (where i started grass65 with grass65 -wxpython):

"GRASS 6.5.svn (nc_spm_08):c:/osgeo4w/apps/grass/bin > Invalid argument: can't _spawnl
ERROR: Unable to start driver <dbf>"

and i can't open the attribute table of the hospital-vector.

This is 6.5.svn:

[neteler@localhost grass65]$ grep _spawnl
*/*/*.cgeneral/g.parser/main.c: /* execlp() and _spawnlp (
_P_OVERLAY,..) do not work, they return
general/g.parser/main.c: /* _spawnlp ( _P_OVERLAY, "sh", "sh",
filename, "@ARGS_PARSED@", NULL ); */
general/g.parser/main.c: _spawnlp(_P_WAIT, shell, shell,
filename, "@ARGS_PARSED@", NULL);
general/g.parser/main.c: perror("_spawnlp() failed");
lib/gis/system.c: _spawnlp(P_WAIT, "cmd.exe", "cmd.exe", "/c",
command, NULL);

[neteler@localhost grass65]$ grep _spawnl */*/*/*.c
lib/db/dbmi_client/start.c: * otherwise _spawnl fails.
The name used as _spawnl
lib/db/dbmi_client/start.c: pid = _spawnl(_P_NOWAIT, startup, startup, NULL);
lib/db/dbmi_client/start.c: db_syserror("can't _spawnl");

the same procedure with grass64svn delivered with osgeo4w-stack there no such error message and the attribute-table can be opened.

but it seems to be identical to 6.4.svn (the grass64svn delivered with
the osgeo4w-stack is older, though):

[neteler@localhost grass64]$ grep _spawnl */*/*.c
general/g.parser/main.c: /* execlp() and _spawnlp (
_P_OVERLAY,..) do not work, they return
general/g.parser/main.c: /* _spawnlp ( _P_OVERLAY, "sh", "sh",
filename, "@ARGS_PARSED@", NULL ); */
general/g.parser/main.c: _spawnlp(_P_WAIT, shell, shell,
filename, "@ARGS_PARSED@", NULL);
general/g.parser/main.c: perror("_spawnlp() failed");
lib/gis/system.c: _spawnlp(P_WAIT, "cmd.exe", "cmd.exe", "/c",
command, NULL);

[neteler@localhost grass64]$ grep _spawnl */*/*/*.c
lib/db/dbmi_client/start.c: * otherwise _spawnl fails.
The name used as _spawnl
lib/db/dbmi_client/start.c: pid = _spawnl(_P_NOWAIT, startup, startup, NULL);
lib/db/dbmi_client/start.c: db_syserror("can't _spawnl");

Please consider to submit this a ticket if no quick solution is found.

Markus