[GRASS-user] make error in grass7_trunk/man
glynn at gclements.plus.com
Mon May 13 05:05:58 PDT 2013
Johannes Radinger wrote:
> I just tried to build GRASS7 on Ubuntu with the r.stream.* and r.fuzzy
> add-ons in the scripts-folder (the subdirs have been added to the makefile
> in the scripts folder).
> When running make I face a compilation error in the /man subfolder:
> VERSION_NUMBER=7.0.svn VERSION_DATE=2013 python ./build_keywords.py
> Traceback (most recent call last):
> File "./build_keywords.py", line 38, in <module>
> key = "%s%s" % (key.upper(), key[1:])
> IndexError: string index out of range
> Any idea where to look for the problem?
It appears that one of the HTML file has a keyword list which begins
or ends with a comma.
The KEYWORDS section is in the portion of the HTML file is generated
by running the module with the --html-description flag.
AFAICT, the problem is due to r.fuzzy.* not having been updated in
response to r38061, which changed the "keywords" field of struct
GModule from a single string (char*) to a list of strings (char**).
Since that change, assigning a string to module->keywords is an error
(although it will only result in a warning during compilation).
Keywords must be set with either G_add_keyword() or G_set_keywords().
As a result, I'd expect those modules to crash when run with any of
the options which output usage information (--help,
--html-description, --interface-description, etc).
This kind of "bit rot" is an inherent problem with having modules in a
separate "add-ons" repository. FWIW, r38061 was made almost 4 years
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-user