[GRASS-dev] [GRASS GIS] #2845: Build failure with 7.0.3RC1 on Linux

GRASS GIS trac at osgeo.org
Sat Jan 2 20:13:31 PST 2016


#2845: Build failure with 7.0.3RC1 on Linux
------------------------+-------------------------
  Reporter:  scimmia    |      Owner:  grass-dev@…
      Type:  defect     |     Status:  new
  Priority:  blocker    |  Milestone:  7.0.3
 Component:  Compiling  |    Version:  unspecified
Resolution:             |   Keywords:
       CPU:  x86-64     |   Platform:  Linux
------------------------+-------------------------

Comment (by wenzeslaus):

 From the error message

 {{{
 /bin/sh: .../dist.x86_64-pc-linux-gnu/gui/wxpython/xml/module_items.xml:
 No such file or directory
 }}}

 I would say that the directory `xml` does not exist (the
 `module_items.xml` should be created in this step, it does not exist
 before but the `xml` directory in distribution should).

 I'm not sure how much we can rely on the order of operations in relation
 to the order in the output but your log says that several directories were
 created, starting with `gui/wxpython`, then it follows with
 `gui/wxpython/symbols` and its subdirs, then there is
 `gui/wxpython/images` and then it tries to create
 `gui/wxpython/xml/module_items.xml` (as stdout redirect) but it fails with
 `No such file or directory` because `gui/wxpython/xml/` was not yet
 created.

 With help of //make// manual I was trying to check the dependencies
 (prerequisites) in the Makefile and it seems correct. `default` which
 contain `$(MAKE) $(DSTDIR)/xml/module_items.xml` requires `$(DSTFILES)`
 which (I guess) include `$(DSTDIR)/gui/wxpython/xml/*.xml`. This is target
 included in `$(DSTDIR)/%` rule which depends on `$(DSTDIRS)` which creates
 the directories. So, I don't understand why `xml` is not created (if it is
 even the case).

 Try the newly attached 3rd version of the patch, I've tried to include
 `$(DSTDIR)` where I think it should be (although it probably works the
 same without it). I also added another explicit dependencies which should
 be given by the order inside the recipe or by its dependencies but I added
 them anyway:

 {{{
 #!diff
  default: $(DSTFILES)
         -$(MAKE) $(DSTDIR)/xml/module_items.xml
 -       -$(MAKE) xml/menudata.xml
 -       -$(MAKE) xml/module_tree_menudata.xml
 +       -$(MAKE) $(DSTDIR)/xml/menudata.xml
 +       -$(MAKE) $(DSTDIR)/xml/module_tree_menudata.xml
         -$(MAKE) menustrings.py
         $(MAKE) parsubdirs

 -xml/menudata.xml: core/toolboxes.py
 +$(DSTDIR)/xml/menudata.xml: core/toolboxes.py ...
 $(DSTDIR)/xml/module_items.xml
         $(call run_grass,$(PYTHON) $< > $@)

 -xml/module_tree_menudata.xml: core/toolboxes.py
 +$(DSTDIR)/xml/module_tree_menudata.xml: core/toolboxes.py ...
 $(DSTDIR)/xml/module_items.xml

 -$(DSTDIR)/xml/module_items.xml: tools/build_modules_xml.py
 +$(DSTDIR)/xml/module_items.xml: tools/build_modules_xml.py $(DSTDIRS)
 }}}

--
Ticket URL: <http://trac.osgeo.org/grass/ticket/2845#comment:7>
GRASS GIS <https://grass.osgeo.org>



More information about the grass-dev mailing list