[GRASS-dev] get interface description for python modules on Windows

Vaclav Petras wenzeslaus at gmail.com
Wed Apr 2 07:45:52 PDT 2014


For the record:

r59485
modify Rules.make to fix build_modules_xml.py on Windows (TODO: replace
this workaround)
https://trac.osgeo.org/grass/changeset/59485



On Wed, Mar 26, 2014 at 4:47 PM, Vaclav Petras <wenzeslaus at gmail.com> wrote:

> Thanks, your analyses seems very deep. It would be incredibly useful if
> somebody would solve this issue since it might fix also compilation on some
> Macs (#1819), for Ubuntu PPA and some other less usual configurations.
>
> Vaclav
>
> https://trac.osgeo.org/grass/ticket/1819
>
>
> On Tue, Mar 25, 2014 at 2:54 PM, Martin Landa <landa.martin at gmail.com>wrote:
>
>> Hi,
>>
>> I am trying to fix `build_modules_xml.py` to produces description also
>> for Python modules. The problem is the failure in grass.script's
>> get_interface_description() [1] caused by two issues. When running the
>> script from Makefile [2], the PATHEXT variable can miss '.py'
>> extension (for running session it's set up by grass.py [3]. I have
>> fixed this issue in r59338.
>>
>> The _remaining_ issue is related to Makefiles. Strangely the rule [4]
>> produces _doubled_ PATH, on Windows it's cased by LD_LIBRARY_PATH
>> which overwrites manually defined PATH:
>>
>>
>> GISRC=/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/demolocation/.grassrc70
>> GISBASE=c:/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32
>> -->
>> PATH="/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/bin:/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/bin:/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/scripts:
>> $PATH"
>>
>> PYTHONPATH="c:/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/etc/python;c:/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/etc/python;$PYTHONPATH"
>> -->
>> PATH="/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/bin:/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/scripts:/c/osgeo4w/usr/src/grass_trunk/dist.i686
>>
>> -pc-mingw32/lib:/c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/lib:.:/usr/local/bin:/mingw/bin:/bin:/osgeo4w/bin:/c/Windows/system32:/c/Windows:/c/Windows/
>> WBem:/usr/bin:/osgeo4w/apps/Python27/Scripts"
>> LC_ALL=C python tools/build_modules_xml.py >
>> /c/osgeo4w/usr/src/grass_trunk/dist.i686-pc-mingw32/etc/gui/wxpython/
>>
>> The result is that `$GISBASE/scripts` is not in the path and
>> get_interface() fails. Does anybody have an idea how to correctly fix
>> `run_grass` rule. If I add `$GISBASE/scripts` to LD_LIBRARY_PATH
>> manually, it starts to work.
>>
>> Thanks for any idea in advance, Martin
>>
>> [1]
>> http://trac.osgeo.org/grass/browser/grass/trunk/lib/python/script/task.py#L455
>> [2]
>> http://trac.osgeo.org/grass/browser/grass/trunk/gui/wxpython/Makefile#L53
>> [3]
>> http://trac.osgeo.org/grass/browser/grass/trunk/lib/init/grass.py#L418
>> [4]
>> http://trac.osgeo.org/grass/browser/grass/trunk/include/Make/Rules.make#L33
>>
>> --
>> Martin Landa * http://geo.fsv.cvut.cz/gwiki/Landa
>> _______________________________________________
>> grass-dev mailing list
>> grass-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/grass-dev
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20140402/6642aabc/attachment.html>


More information about the grass-dev mailing list