[GRASS-dev] [GRASS GIS] #887: db.describe fails if $GISBASE
contains a space
GRASS GIS
trac at osgeo.org
Thu Jan 21 02:24:49 EST 2010
#887: db.describe fails if $GISBASE contains a space
----------------------+-----------------------------------------------------
Reporter: hamish | Owner: grass-dev at lists.osgeo.org
Type: defect | Status: new
Priority: normal | Milestone: 6.5.0
Component: Database | Version: svn-releasebranch64
Keywords: spaces | Platform: Linux
Cpu: x86-64 |
----------------------+-----------------------------------------------------
Hi,
If I move "dist.x86_64-unknown-linux-gnu/" to "dist.x86_64-unknown-linux
gnu/" (and edit ./bin.$ARCH/grass65), db.describe fails:
{{{
g.copy roads,roads2
db.describe roads2
D2/5: dbDbmscap(): opendir [/usr/local/src/grass/svn/grass65/dist.x86_64-
unknown-linux gnu/driver/db/]
D2/5: dbDbmscap(): opendir [/usr/local/src/grass/svn/grass65/dist.x86_64-
unknown-linux gnu/driver/db/]
sh: /usr/local/src/grass/svn/grass65/dist.x86_64-unknown-linux: No such
file or directory
dbmi: Protocol error
ERROR: Unable to start driver <dbf>
}}}
near EOF of lib/db/dbmi_client/start.c:
{{{
execl("/bin/sh", "sh", "-c", startup, NULL);
}}}
The startup string is set correctly; I guess execl() wants to see quotes
in the string itself?
n.b. all programs in $GISBASE/driver/db/ are ELF binaries, so is sh really
needed at all? why not just run them directly?
Hamish
ps- building GRASS in a dir with spaces seems impossible because
Autoconf2.13 expansion code does not always quote $srcdir.
(unless we run a second sed script after autoconf2.13 to run around the
resulting `configure` file and quote variables as needed* -- but not all
variables, e.g. $pwd can expand to "pwd -W".
--
Ticket URL: <https://trac.osgeo.org/grass/ticket/887>
GRASS GIS <http://grass.osgeo.org>
More information about the grass-dev
mailing list