[GRASS-dev] Seeking advices for image segmentation algorithms and windows compile question

Moritz Lennert mlennert at club.worldonline.be
Fri May 20 02:09:29 PDT 2016

On 19/05/16 20:38, Yang, Bo (yangb2) wrote:
> Hi Helmut,
> Thanks for the prompt reply. Now I am able to compile and start GRASS, but still have a small issue. Below are my procedures:
> 1. I changed back to 64bit packages because I can't go through in the 32bit environmental follow the tutorial [0] (I think might because my OS is 64bit).
> 2. Thanks for your advice, after deleted:
> https://trac.osgeo.org/grass/browser/grass/trunk/mswindows/osgeo4w/package.sh#L178
> there no lidar error reported (r.in.lidar, r3.in.lidar, v.out.lidar, v.in.lidar). GRASS can be built successfully.
> 3. As mentioned in the previous threads, the C:\OSGeo4W64\bin\grass71svn#L8 need to be changed to e.g. "SET OSGEO4W_ROOT= C:\OSGeo4W64"
> 4. Then run grass71svn, it reported 3 dll files are missing respectively: "libintl-8.dll/ libsystre-0/ libiconv-2 is missing from your computer";  each time it report one dll missing, I copy this file from "C:\msys64\mingw64\bin" to " C:\OSGeo4W64\bin". I don't know why still come dll missing. I installed all the components required in [0]
> 5. Afterward GRASS can be started in both text mode and g.gui mode.

And you can run i.segment and other modules ?

> 6. I change to i.segment folder and run 'make'. It reported:
> $ make
> if [ "/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin/i.segment.exe" != "" ] ; then GISRC=/usr/src/grass_trunk/dist.x86_64-w64-mingw32/demolocation/.grassrc71 GISBASE=C:/msys64/usr/src/grass_trunk/dist.x86_64-w64-mingw32 PATH="/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/scripts:$PATH" PYTHONPATH="C:/msys64/usr/src/grass_trunk/dist.x86_64-w64-mingw32/etc/python;C:/msys64/usr/src/grass_trunk/dist.x86_64-w64-mingw32/gui/wxpython;$PYTHONPATH" PATH="/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/scripts:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/lib:/usr/src/grass_trunk/dist.x86_64-w64-mingw32/lib:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/ProgramData/Oracle/Java/javapath:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/c/Program Files (x86)
/Skype/Phone" LC_ALL=C /usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin/i.segment.exe --html-description < /dev/null | grep -v '</body>\|</html>' > i.segment.tmp.html ; fi
> C:/msys64/usr/src/grass_trunk/dist.x86_64-w64-mingw32/bin/i.segment.exe: error while loading shared libraries: libgrass_imagery.7.1.svn.dll: cannot open shared object file: No such file or directory
> ../../include/Make/Html.make:14: recipe for target 'i.segment.tmp.html' failed
> make: *** [i.segment.tmp.html] Error 1
> rm i.segment.tmp.html
> This error appeared previous, I go to C:\msys64\usr\src\grass_trunk\include\Make\ Html.make#14 and comment line14:
> #	if [ "$(HTMLSRC)" != "" ] ; then $(call htmldesc,$<,$@) ; fi
> Then run make in this folder, no error reported, and i.segment can be start via GRASS GUI or i.segment --ui itself.
> Do you know will it be anything wrong in the future if commenting this line?

This line creates the HTML manual page of your module. So, it won't keep 
your module from running, but you won't have the complete manual page.

Out of curiosity, could you:

- start grass in text mode, navigate to your i.segment folder and run 'make'

- in text mode run 'g.gisenv' and send us the output


I am wondering whether the paths indicated in the line causing the error 
in make correspond to the paths used when you run GRASS.


More information about the grass-dev mailing list