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

Hello,

This is Bo Yang from the University of Cincinnati. I am working with Moritz and Markus for the GSoC 2016 project-- Additional segmentation algorithms for i.segment [0]. Currently, the i.segment module only provides one segmentation algorithm: region-growing. The code of i.segment was structured in a way that allows addition of other algorithms. I plan to add

More algorithms such as mean-shift and watershed. To prepare for it, I searched some literatures about both algorithms below, I’d like to consult if anyone have more recommended references.

Mean-shift:

Comaniciu, D., & Meer, P. (2002). Mean shift: a robust approach toward feature space analysis. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(5), 1–37.

Watershed:

Shafarenko, Leila, Maria Petrou, and Josef Kittler. “Automatic watershed segmentation of randomly textured color images.” Image Processing, IEEE Transactions on 6.11 (1997): 1530-1544.

Haris, Kostas, et al. “Hybrid image segmentation using watersheds and fast region merging.” Image Processing, IEEE Transactions on 7.12 (1998): 1684-1699.

In addition, is there anyone who use win10 OS to compile the GRASS? I have compiled GRASS in window 10 64bit system followed the tutorial [1]. In last step of the tutorial it mentioned:

Usage:

To start GRASS use the icon on the desktop or if you want to be able to use the command line from within GRASS.

Type in cmd console (assuming that we compiled GRASS 7.1):

c:\osgeo4w\bin\grass71svn.bat

However, No matter I use CMD console or the OSGeo4W Shell. I got the same error below:

‘“”’ is not recognized as an internal or external command, operable program or batch file.

From the error.log there is no error during the compiling. There is no error reported in former steps either, and I can see the file " grass71svn.bat " is located in the right place. But I still can’t start the compiled GRASS. I Googled this error but can’t find helpful information. Any suggestion would be greatly appreciate.

P.S. scripts in grass71svn.bat:

@echo off

rem #########################################################################

rem #

rem # GRASS initialization bat script (OSGeo4W)

rem #

rem #########################################################################

SET OSGEO4W_ROOT=@osgeo4w@

rem

rem Set environmental variables

rem

call %OSGEO4W_ROOT%\bin\o4w_env.bat

call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat

rem

rem Launch GRASS GIS

rem

“%GRASS_PYTHON%” “%GISBASE%\etc\grass71.py” %*

rem

rem Pause on error

rem

if %ERRORLEVEL% GEQ 1 pause

[0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms

[1] https://trac.osgeo.org/grass/wiki/CompileOnWindows

I would strongly suggest to set up a dual boot on your system with
Ubuntu or Debian as a development platform. You will save tons of time
wasted on fighting with Windows'isms. Don't waste your time on
virtualisation unless you can give VM two cores + 8Gb RAM. No,
developing GRASS GIS doesn't need so much resources but full
virtualisation does (to be reasonable fast). Yes, it will take a day
or two to get dualboot up and running but will pay back (by time)
really fast.

Save yours (and our) time!
Māris.

2016-05-05 2:19 GMT+03:00 Yang, Bo (yangb2) <yangb2@mail.uc.edu>:

Hello,

In addition, is there anyone who use win10 OS to compile the GRASS? I have
compiled GRASS in window 10 64bit system followed the tutorial [1]. In last
step of the tutorial it mentioned:

                >Usage:

                >To start GRASS use the icon on the desktop or if you want
to be able to use the command line from within GRASS.

                >Type in cmd console (assuming that we compiled GRASS 7.1):

                >c:\osgeo4w\bin\grass71svn.bat

However, No matter I use CMD console or the OSGeo4W Shell. I got the same
error below:

                '""' is not recognized as an internal or external command,
operable program or batch file.

From the error.log there is no error during the compiling. There is no error
reported in former steps either, and I can see the file " grass71svn.bat "
is located in the right place. But I still can't start the compiled GRASS. I
Googled this error but can't find helpful information. Any suggestion would
be greatly appreciate.

P.S. scripts in grass71svn.bat:

@echo off

rem
#########################################################################

rem #

rem # GRASS initialization bat script (OSGeo4W)

rem #

rem
#########################################################################

SET OSGEO4W_ROOT=@osgeo4w@

rem

rem Set environmental variables

rem

call %OSGEO4W_ROOT%\bin\o4w_env.bat

call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat

rem

rem Launch GRASS GIS

rem

"%GRASS_PYTHON%" "%GISBASE%\etc\grass71.py" %*

rem

rem Pause on error

rem

if %ERRORLEVEL% GEQ 1 pause

[0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms

[1] https://trac.osgeo.org/grass/wiki/CompileOnWindows

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Hi all,

[Bo, please keep such discussions on the list.]

Even though I agree with Maris that compiling in GNU/Linux is easier, I
do think that we should rather support those who want to develop in a
windows environment. We lack windows devs, and telling everyone at the
first difficulty to move over to GNU/Linux will not increase that
number.

Helmut, would you have any advice to give to Bo on his issue in
launching the windows version ?

Moritz

Le Thu, 5 May 2016 16:24:51 +0000,
"Yang, Bo (yangb2)" <yangb2@mail.uc.edu> a écrit :

Hi Māris,

Thanks for the advice! Yes, I agree that GRASS could be compiled
easier in Linux/Unix than windows. I recalled that I actually have a
VM OS X El Captain (2 core/ 6Gb/ 80GB on SSD) on my desktop (i7 4
core/ 12GB/ 256 SSD). Previously it was set to test Xcode. I will try
to compile it on OS X and Ubuntu to see if works better.

Best,
Bo Yang

-----Original Message-----
From: Maris Nartiss [mailto:maris.gis@gmail.com]
Sent: Thursday, May 5, 2016 2:39 AM
To: Yang, Bo (yangb2) <yangb2@mail.uc.edu>
Cc: grass-dev@lists.osgeo.org; Markus Metz
<markus.metz.giswork@gmail.com> Subject: Re: [GRASS-dev] Seeking
advices for image segmentation algorithms and windows compile question

I would strongly suggest to set up a dual boot on your system with
Ubuntu or Debian as a development platform. You will save tons of
time wasted on fighting with Windows'isms. Don't waste your time on
virtualisation unless you can give VM two cores + 8Gb RAM. No,
developing GRASS GIS doesn't need so much resources but full
virtualisation does (to be reasonable fast). Yes, it will take a day
or two to get dualboot up and running but will pay back (by time)
really fast.

Save yours (and our) time!
Māris.

2016-05-05 2:19 GMT+03:00 Yang, Bo (yangb2) <yangb2@mail.uc.edu>:
> Hello,
>

>
> In addition, is there anyone who use win10 OS to compile the GRASS?
> I have compiled GRASS in window 10 64bit system followed the
> tutorial [1]. In last step of the tutorial it mentioned:
>
> >Usage:
>
> >To start GRASS use the icon on the desktop or if
> >you
> want to be able to use the command line from within GRASS.
>
> >Type in cmd console (assuming that we compiled
> >GRASS 7.1):
>
> >c:\osgeo4w\bin\grass71svn.bat
>
> However, No matter I use CMD console or the OSGeo4W Shell. I got
> the same error below:
>
> '""' is not recognized as an internal or external
> command, operable program or batch file.
>
> From the error.log there is no error during the compiling. There is
> no error reported in former steps either, and I can see the file "
> grass71svn.bat " is located in the right place. But I still can't
> start the compiled GRASS. I Googled this error but can't find
> helpful information. Any suggestion would be greatly appreciate.
>
>
>
> P.S. scripts in grass71svn.bat:
>
> @echo off
>
> rem
> ######################################################################
> ###
>
> rem #
>
> rem # GRASS initialization bat script (OSGeo4W)
>
> rem #
>
> rem
> ######################################################################
> ###
>
>
>
> SET OSGEO4W_ROOT=@osgeo4w@
>
>
>
> rem
>
> rem Set environmental variables
>
> rem
>
> call %OSGEO4W_ROOT%\bin\o4w_env.bat
>
> call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat
>
>
>
> rem
>
> rem Launch GRASS GIS
>
> rem
>
> "%GRASS_PYTHON%" "%GISBASE%\etc\grass71.py" %*
>
>
>
> rem
>
> rem Pause on error
>
> rem
>
> if %ERRORLEVEL% GEQ 1 pause
>
>
>
> [0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms
>
> [1] https://trac.osgeo.org/grass/wiki/CompileOnWindows
>
>
>
>
> _______________________________________________
> grass-dev mailing list
> grass-dev@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev

> no error reported in former steps either, and I can see the file "
> grass71svn.bat " is located in the right place.

what is the "right place"? what is the path to the "right place"?

> SET OSGEO4W_ROOT=@osgeo4w@

could it be that OSGEO4W_ROOT isn't defined?

was winGRASS also installed or eventually only compiled?

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265184.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

> @echo off
>
> rem
> ######################################################################
> ###
>
> rem #
>
> rem # GRASS initialization bat script (OSGeo4W)
>
> rem #
>
> rem
> ######################################################################
> ###
>
>
>
> SET OSGEO4W_ROOT=@osgeo4w@

a quick look in a OSGeo4W installation here on my side:

C:\OSGeo4W\bin\grass71svn.bat
---------------------------------------------
@echo off
rem
#########################################################################
rem #
rem # GRASS initialization bat script (OSGeo4W)
rem #
rem
#########################################################################

SET OSGEO4W_ROOT=C:\OSGeo4W
[...]
---------------------------------------------

compare OSGEO4W_ROOT above. OSGEO4W_ROOT has to be defined, otherwise the
other bat-files, which define all needed variables, and grass71.py can't be
found.

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265188.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Hi All,

Thanks Moritz! Actually, this weekend I've tried both. I assume win10 is too new so I tried win 7 and win8.1 using different computers. I followed same tutorial [0], after I compiled for release builds on 64bit, I got the error report for both win 7 and win 8.1 OS:

Errors in:
/usr/src/grass_trunk/raster/r.in.lidar
/usr/src/grass_trunk/raster3d/r3.in.lidar
/usr/src/grass_trunk/vector/v.out.lidar
/usr/src/grass_trunk/vector/v.in.lidar

I tried to change into the directory with error and run 'make'. The error msg was long and I think I need time to read them.

I've also tried compile GRASS on VM OS X El Captain using homebrew[1] first. But got stuck at:

brew install --HEAD grass-71
==>Installing grass-71 from rkrug/head-only
==>Cloning https://svn.osgeo.org/grass/grass/trunk
then the terminal freezing here forever.

Sorry for the slow progress. I think I need more time to do the research work. Any help would be appreciated.

Best,
Bo Yang

[0] https://trac.osgeo.org/grass/wiki/CompileOnWindows
[1] https://grasswiki.osgeo.org/wiki/Compiling_on_MacOSX_using_homebrew

-----Original Message-----
From: Moritz Lennert [mailto:mlennert@club.worldonline.be]
Sent: Saturday, May 7, 2016 8:24 PM
To: Yang, Bo (yangb2) <yangb2@mail.uc.edu>
Cc: Maris Nartiss <maris.gis@gmail.com>; Markus Metz <markus.metz.giswork@gmail.com>; grass-dev@lists.osgeo.org; Helmut Kudrnovsky <hellik@web.de>
Subject: Re: [GRASS-dev] Seeking advices for image segmentation algorithms and windows compile question

Hi all,

[Bo, please keep such discussions on the list.]

Even though I agree with Maris that compiling in GNU/Linux is easier, I do think that we should rather support those who want to develop in a windows environment. We lack windows devs, and telling everyone at the first difficulty to move over to GNU/Linux will not increase that number.

Helmut, would you have any advice to give to Bo on his issue in launching the windows version ?

Moritz

Le Thu, 5 May 2016 16:24:51 +0000,
"Yang, Bo (yangb2)" <yangb2@mail.uc.edu> a écrit :

Hi Māris,

Thanks for the advice! Yes, I agree that GRASS could be compiled
easier in Linux/Unix than windows. I recalled that I actually have a
VM OS X El Captain (2 core/ 6Gb/ 80GB on SSD) on my desktop (i7 4
core/ 12GB/ 256 SSD). Previously it was set to test Xcode. I will try
to compile it on OS X and Ubuntu to see if works better.

Best,
Bo Yang

-----Original Message-----
From: Maris Nartiss [mailto:maris.gis@gmail.com]
Sent: Thursday, May 5, 2016 2:39 AM
To: Yang, Bo (yangb2) <yangb2@mail.uc.edu>
Cc: grass-dev@lists.osgeo.org; Markus Metz
<markus.metz.giswork@gmail.com> Subject: Re: [GRASS-dev] Seeking
advices for image segmentation algorithms and windows compile question

I would strongly suggest to set up a dual boot on your system with
Ubuntu or Debian as a development platform. You will save tons of time
wasted on fighting with Windows'isms. Don't waste your time on
virtualisation unless you can give VM two cores + 8Gb RAM. No,
developing GRASS GIS doesn't need so much resources but full
virtualisation does (to be reasonable fast). Yes, it will take a day
or two to get dualboot up and running but will pay back (by time)
really fast.

Save yours (and our) time!
Māris.

2016-05-05 2:19 GMT+03:00 Yang, Bo (yangb2) <yangb2@mail.uc.edu>:
> Hello,
>

>
> In addition, is there anyone who use win10 OS to compile the GRASS?
> I have compiled GRASS in window 10 64bit system followed the
> tutorial [1]. In last step of the tutorial it mentioned:
>
> >Usage:
>
> >To start GRASS use the icon on the desktop or if
> >you
> want to be able to use the command line from within GRASS.
>
> >Type in cmd console (assuming that we compiled
> >GRASS 7.1):
>
> >c:\osgeo4w\bin\grass71svn.bat
>
> However, No matter I use CMD console or the OSGeo4W Shell. I got the
> same error below:
>
> '""' is not recognized as an internal or external
> command, operable program or batch file.
>
> From the error.log there is no error during the compiling. There is
> no error reported in former steps either, and I can see the file "
> grass71svn.bat " is located in the right place. But I still can't
> start the compiled GRASS. I Googled this error but can't find
> helpful information. Any suggestion would be greatly appreciate.
>
>
>
> P.S. scripts in grass71svn.bat:
>
> @echo off
>
> rem
> ####################################################################
> ##
> ###
>
> rem #
>
> rem # GRASS initialization bat script (OSGeo4W)
>
> rem #
>
> rem
> ####################################################################
> ##
> ###
>
>
>
> SET OSGEO4W_ROOT=@osgeo4w@
>
>
>
> rem
>
> rem Set environmental variables
>
> rem
>
> call %OSGEO4W_ROOT%\bin\o4w_env.bat
>
> call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat
>
>
>
> rem
>
> rem Launch GRASS GIS
>
> rem
>
> "%GRASS_PYTHON%" "%GISBASE%\etc\grass71.py" %*
>
>
>
> rem
>
> rem Pause on error
>
> rem
>
> if %ERRORLEVEL% GEQ 1 pause
>
>
>
> [0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms
>
> [1] https://trac.osgeo.org/grass/wiki/CompileOnWindows
>
>
>
>
> _______________________________________________
> grass-dev mailing list
> grass-dev@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev

For MS windows have a look here:

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080159.html

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080160.html

I assume win10 is too new so I tried win 7 and win8.1 using different
computers. I

AFAIK the Windows version doesn't matter.

Errors in:
/usr/src/grass_trunk/raster/r.in.lidar
/usr/src/grass_trunk/raster3d/r3.in.lidar
/usr/src/grass_trunk/vector/v.out.lidar
/usr/src/grass_trunk/vector/v.in.lidar

please check if the development dependencies for the lidar tools are present
in your build development.

install them or disable to build them (maybe the latter is better in Windows
64bit as there may be some issues with the las tools in OSGeo4W 64bit
AFAIR).

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265294.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

On 09/05/16 08:26, Helmut Kudrnovsky wrote:

For MS windows have a look here:

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080159.html

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080160.html

I assume win10 is too new so I tried win 7 and win8.1 using different
computers. I

AFAIK the Windows version doesn't matter.

Errors in:
/usr/src/grass_trunk/raster/r.in.lidar
/usr/src/grass_trunk/raster3d/r3.in.lidar
/usr/src/grass_trunk/vector/v.out.lidar
/usr/src/grass_trunk/vector/v.in.lidar

please check if the development dependencies for the lidar tools are present
in your build development.

install them or disable to build them (maybe the latter is better in Windows
64bit as there may be some issues with the las tools in OSGeo4W 64bit
AFAIR).

Yes, I agree: don't worry about Lidar at this stage. You should be able to just ignore these errors and run GRASS anyhow. Have you tried running it after this compile ?

Moritz

Hi Helmut and Moritz,

Thanks for the reply and advise, here is my updates:
1)

> no error reported in former steps either, and I can see the file "
> grass71svn.bat " is located in the right place.
what is the "right place"? what is the path to the "right place"?

According to the tutorial [0], after compile with the default setting, the grass71svn.bat should be located in " c:\osgeo4w\bin\grass71svn.bat.". I see it is there, but when I run it via cmd (or double click), it always give the error:
'""' is not recognized as an internal or external command,
operable program or batch file.
Press any key to continue . . .

2)

> SET OSGEO4W_ROOT=@osgeo4w@
could it be that OSGEO4W_ROOT isn't defined?
was winGRASS also installed or eventually only compiled?

Win GRASS was not installed yet, because in the tutorial the step of "Creating a WinGRASS Installer" was located after the step of "Compiling and Installing GRASS GIS". And the tutorial mentioned: " Do not move on to step two until you have successfully tested your new version of GRASS. "
So I didn't install WinGRASS since my compile part didn't go through yet.

3)

compare OSGEO4W_ROOT above. OSGEO4W_ROOT has to be defined, otherwise the other bat-files, which define all needed variables, and grass71.py can't be found.

I edit the grass71svn.bat file compare with your file.
I change line " SET OSGEO4W_ROOT=@osgeo4w@ " of the bat file to " SET OSGEO4W_ROOT=C:\osgeo4w64 " since my path is C:\OSGeo4W64\bin.
I run the grass71svn.bat again and poped up the below error:
libintl-8.dell missing
libsystre-0.dll missing
...
I Googled the missing dll solutions[1] and copy them from C:\OSGeo4W64\bin to C:\osgeo4w64 and run again. Then it shoed on the screen:
---------------------------------------------------
Cleaning up temporary files...
Starting GRASS GIS...
ERROR: wxGUI requires wxPython. No module named wxversion
ERROR: Error in GUI startup. See messages above (if any) and if necessary, please report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, probably named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Press any key to continue . . .
------------------------------------------------
I think this time is most close to start compiled GRASS so far.

4)

Yes, I agree: don't worry about Lidar at this stage. You should be able
to just ignore these errors and run GRASS anyhow. Have you tried running
it after this compile?

I found that if the compile result have errors, there are no file of grass71svn.bat in the path of C:\OSGeo4W64\bin. So I don't know how to ignore the error and run GRASS anyway because on the tutorial the grass71svn.bat is needed for start GRASS.

Best,
Bo Yang

[0] https://trac.osgeo.org/grass/wiki/CompileOnWindows
[1] http://forums.codeblocks.org/index.php?topic=20598.0

-----Original Message-----
From: Moritz Lennert [mailto:mlennert@club.worldonline.be]
Sent: Monday, May 9, 2016 3:40 AM
To: Helmut Kudrnovsky <hellik@web.de>; grass-dev@lists.osgeo.org
Subject: Re: [GRASS-dev] Seeking advices for image segmentation algorithms and windows compile question

On 09/05/16 08:26, Helmut Kudrnovsky wrote:

For MS windows have a look here:

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080159.html

https://lists.osgeo.org/pipermail/grass-dev/2016-May/080160.html

I assume win10 is too new so I tried win 7 and win8.1 using different
computers. I

AFAIK the Windows version doesn't matter.

Errors in:
/usr/src/grass_trunk/raster/r.in.lidar
/usr/src/grass_trunk/raster3d/r3.in.lidar
/usr/src/grass_trunk/vector/v.out.lidar
/usr/src/grass_trunk/vector/v.in.lidar

please check if the development dependencies for the lidar tools are
present in your build development.

install them or disable to build them (maybe the latter is better in
Windows 64bit as there may be some issues with the las tools in
OSGeo4W 64bit AFAIR).

Yes, I agree: don't worry about Lidar at this stage. You should be able to just ignore these errors and run GRASS anyhow. Have you tried running it after this compile ?

Moritz

error:
libintl-8.dell missing
libsystre-0.dll missing

[...]

ERROR: wxGUI requires wxPython. No module named wxversion

It looks like the running/buildenvironment is inkompetent.

all these dll's and wxpython should be available by the OSGeo4W environment.

try the OSGeo4W advanced install to install all these missing libs and
wxpython

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265493.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Regarding missing dll's and wxpython, try to install e.g. OSGeo4W-winGRASS
7.0.4, then all dependencies should be installed.

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265495.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Regarding error in las modules:

See

https://trac.osgeo.org/grass/browser/grass/trunk/mswindows/osgeo4w/package.sh#L178

and change this line to disable las functionality for compilation

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265496.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

On 10/05/16 03:40, Yang, Bo (yangb2) wrote:

Hi Helmut and Moritz,

Thanks for the reply and advise, here is my updates:
1)

no error reported in former steps either, and I can see the file "
grass71svn.bat " is located in the right place.

what is the "right place"? what is the path to the "right place"?

According to the tutorial [0], after compile with the default setting, the grass71svn.bat should be located in " c:\osgeo4w\bin\grass71svn.bat.". I see it is there, but when I run it via cmd (or double click), it always give the error:
'""' is not recognized as an internal or external command,
operable program or batch file.
Press any key to continue . . .

2)

SET OSGEO4W_ROOT=@osgeo4w@

could it be that OSGEO4W_ROOT isn't defined?
was winGRASS also installed or eventually only compiled?

Win GRASS was not installed yet, because in the tutorial the step of "Creating a WinGRASS Installer" was located after the step of "Compiling and Installing GRASS GIS". And the tutorial mentioned: " Do not move on to step two until you have successfully tested your new version of GRASS. "
So I didn't install WinGRASS since my compile part didn't go through yet.

I don't know about the details in Windows, here, so I'll let Helmut help you with this.

3)

compare OSGEO4W_ROOT above. OSGEO4W_ROOT has to be defined, otherwise the other bat-files, which define all needed variables, and grass71.py can't be found.

I edit the grass71svn.bat file compare with your file.
I change line " SET OSGEO4W_ROOT=@osgeo4w@ " of the bat file to " SET OSGEO4W_ROOT=C:\osgeo4w64 " since my path is C:\OSGeo4W64\bin.
I run the grass71svn.bat again and poped up the below error:
libintl-8.dell missing
libsystre-0.dll missing
...
I Googled the missing dll solutions[1] and copy them from C:\OSGeo4W64\bin to C:\osgeo4w64 and run again. Then it shoed on the screen:
---------------------------------------------------
Cleaning up temporary files...
Starting GRASS GIS...
ERROR: wxGUI requires wxPython. No module named wxversion
ERROR: Error in GUI startup. See messages above (if any) and if necessary, please report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, probably named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Press any key to continue . . .
------------------------------------------------
I think this time is most close to start compiled GRASS so far.

This means that either wxpython is not installed, or that wxversion is not in the path. It should be available in the osgeo4w installer. Check whether it is installed.

4)

Yes, I agree: don't worry about Lidar at this stage. You should be able
to just ignore these errors and run GRASS anyhow. Have you tried running
it after this compile?

I found that if the compile result have errors, there are no file of
grass71svn.bat in the path of C:\OSGeo4W64\bin. So I don't know how to
ignore the error and run GRASS anyway because on the tutorial the

> grass71svn.bat is needed for start GRASS.

Ok, then you have to either solve the compilation errors (maybe you can send us the error.log of trying to run make in one of the directories which failed), or disable compilation by (I think - but am no expert in MS Windows compilation - Helmut, can you confirm ?) erasing the line

--with-liblas=$PWD/mswindows/osgeo4w/liblas-config

from ./mswindows/osgeo4w/package.sh.

Moritz

Ok, then you have to either solve the compilation errors (maybe you can
send us the error.log of trying to run make in one of the directories
which failed), or disable compilation by (I think - but am no expert in
MS Windows compilation - Helmut, can you confirm ?) erasing the line

--with-liblas=$PWD/mswindows/osgeo4w/liblas-config

from ./mswindows/osgeo4w/package.sh.

it's the same as in linux, just comment out this line.

the las compiling may be related to a las-issue in OSGeo4W 64bit:

https://trac.osgeo.org/grass/ticket/2996
https://trac.osgeo.org/osgeo4w/ticket/493

so commenting out this line should/may help to compile, if the other
dependencies/requirements (wxpython, wxversion, dlls) are complete.

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265534.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Hi Helmut and Moritz,

error:
libintl-8.dell missing
libsystre-0.dll missing

[...]

ERROR: wxGUI requires wxPython. No module named wxversion

It looks like the running/buildenvironment is inkompetent.

all these dll's and wxpython should be available by the OSGeo4W environment.

try the OSGeo4W advanced install to install all these missing libs and wxpython

Regarding missing dll's and wxpython, try to install e.g. OSGeo4W-winGRASS 7.0.4, then all dependencies should be installed.

I installed wxpython and OSGeo4W-winGRASS 7.0.4 via OSGeo4W, then build GRASS again (20min, no error reported). Now on my desktop there are both shortcuts of "GRASS GIS 7.1.svn" and "GRASS GIS 7.0.4".
Currently the GRASS GIS 7.0.4 can be normally started without any issue. However, when start GRASS GIS 7.1.svn. the error below showed.
I did some research on google. Given all the errors come from python, I am thinking probably there are conflicts come from multi-python installations of my computer (I have anaconda and ArcGIS installed on my computer, both have python 2.7). If you think so too I will find another computer to clean install a new win7/10 and try to start over the compile follow that tutorial.

Best,
Bo

Appendix I: Error screenshot:
-------------------------------
Cleaning up temporary files...
Starting GRASS GIS...
Traceback (most recent call last):
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1200, in <module>
    GRASSStartUp = StartUp(0)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.py", line 7981, in __init__
    self._BootstrapApp()
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.py", line 7555, in _BootstrapApp
    return _core_.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1175, in OnInit
    StartUp = GRASSStartup()
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 230, in __init__
    self._set_properties(grassVersion, grassRevisionStr)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 282, in _set_properties
    self.OnSetDatabase(None)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 929, in OnSetDatabase
    self.UpdateLocations(self.gisdbase)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 796, in UpdateLocations
    self.lblocations.InsertItems(self.listOfLocations, 0)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1152, in InsertItems
    self._LoadData(choices, disabled)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py", line 1141, in _LoadData
    index = self.InsertStringItem(sys.maxsize, item)
  File "C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_controls.py", line 4761, in InsertStringItem
    return _controls_.ListCtrl_InsertStringItem(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "m_count == ListView_GetItemCount(GetHwnd())" failed at ..\..\src\msw\listctrl.cpp(1629) in wxListCtrl::InsertItem(): m_count should match ListView_GetItemCount
ERROR: Error in GUI startup. See messages above (if any) and if necessary, please report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package, probably named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Press any key to continue . . .
------------------------------------------

Appendix II: file of error.log (usr/src/grass_trunk):
--------------------
GRASS GIS 7.1.svn r68375 compilation log
--------------------------------------------------
Started compilation: Tue, May 10, 2016 10:46:44 PM
--
Errors in:
No errors detected.
--
Finished compilation: Tue, May 10, 2016 10:48:16 PM
--------------------------------------------------

Yang, Bo (yangb2) wrote

Hi Helmut and Moritz,

error:
libintl-8.dell missing
libsystre-0.dll missing

[...]

ERROR: wxGUI requires wxPython. No module named wxversion

It looks like the running/buildenvironment is inkompetent.

all these dll's and wxpython should be available by the OSGeo4W

environment.

try the OSGeo4W advanced install to install all these missing libs and

wxpython

Regarding missing dll's and wxpython, try to install e.g. OSGeo4W-winGRASS

7.0.4, then all dependencies should be installed.

I installed wxpython and OSGeo4W-winGRASS 7.0.4 via OSGeo4W, then build
GRASS again (20min, no error reported). Now on my desktop there are both
shortcuts of "GRASS GIS 7.1.svn" and "GRASS GIS 7.0.4".
Currently the GRASS GIS 7.0.4 can be normally started without any issue.
However, when start GRASS GIS 7.1.svn. the error below showed.
I did some research on google. Given all the errors come from python, I am
thinking probably there are conflicts come from multi-python installations
of my computer (I have anaconda and ArcGIS installed on my computer, both
have python 2.7). If you think so too I will find another computer to
clean install a new win7/10 and try to start over the compile follow that
tutorial.

Best,
Bo

Appendix I: Error screenshot:
-------------------------------
Cleaning up temporary files...
Starting GRASS GIS...
Traceback (most recent call last):
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 1200, in
<module>
    GRASSStartUp = StartUp(0)
  File
"C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.py",
line 7981, in __init__
    self._BootstrapApp()
  File
"C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_core.py",
line 7555, in _BootstrapApp
    return _core_.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 1175, in OnInit
    StartUp = GRASSStartup()
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 230, in __init__
    self._set_properties(grassVersion, grassRevisionStr)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 282, in _set_properties
    self.OnSetDatabase(None)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 929, in OnSetDatabase
    self.UpdateLocations(self.gisdbase)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 796, in UpdateLocations
    self.lblocations.InsertItems(self.listOfLocations, 0)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 1152, in InsertItems
    self._LoadData(choices, disabled)
  File "C:\OSGEO4~1\apps\grass\grass-7.1.svn\gui\wxpython\gis_set.py",
line 1141, in _LoadData
    index = self.InsertStringItem(sys.maxsize, item)
  File
"C:\OSGEO4~1\apps\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_controls.py",
line 4761, in InsertStringItem
    return _controls_.ListCtrl_InsertStringItem(*args, **kwargs)
wx._core.PyAssertionError: C++ assertion "m_count ==
ListView_GetItemCount(GetHwnd())" failed at
..\..\src\msw\listctrl.cpp(1629) in wxListCtrl::InsertItem(): m_count
should match ListView_GetItemCount
ERROR: Error in GUI startup. See messages above (if any) and if necessary,
please report this error to the GRASS developers.
On systems with package manager, make sure you have the right GUI package,
probably named grass-gui, installed.
To run GRASS GIS in text mode use the -text flag.
Exiting...
Press any key to continue . . .
------------------------------------------

Appendix II: file of error.log (usr/src/grass_trunk):
--------------------
GRASS GIS 7.1.svn r68375 compilation log
--------------------------------------------------
Started compilation: Tue, May 10, 2016 10:46:44 PM
--
Errors in:
No errors detected.
--
Finished compilation: Tue, May 10, 2016 10:48:16 PM
----------------------------------------------

ok, good to know that it compiles now.

for the error message, see

https://trac.osgeo.org/grass/ticket/3011

I'll add your example to the ticket.

if you have another windows box without another python installation, try to
compile there until this ticket is solved.

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265678.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

I did some research on google. Given all the errors come from >python, I am

thinking probably there are conflicts come from multi->python installations
of my computer (I have anaconda and ArcGIS >installed on my computer, both
have python 2.7)

could you do following steps to test if there is some interference with
other python installation?

- rename the ArcGIS python installation folder temporarily (e.g. Python27 ->
Yyypython27)

- do the same with the anaconda python installation folder

- try to start start again your self compiled winGRASS 7.1svn

- report back here if your self compiled winGRASS 7.1svn starts or not

- rename back the both folders

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265681.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Now on my desktop there are both shortcuts of "GRASS GIS 7.1.svn" and

"GRASS GIS 7.0.4".

Currently the GRASS GIS 7.0.4 can be normally started without any issue.

However, when start GRASS GIS >7.1.svn. the error below showed.

for a workaround see:

https://trac.osgeo.org/grass/ticket/3011#comment:4

and see

https://grass.osgeo.org/grass71/manuals/grass7.html

howto start grass71 in text mode and then start the GUI:

e.g. in the OSGeo4W-console:
----------------
C:\>grass71svn.bat -text C:\grassdata\test3035\data
C:\>g.gui wxpython
----------------

-----
best regards
Helmut
--
View this message in context: http://osgeo-org.1560.x6.nabble.com/Seeking-advices-for-image-segmentation-algorithms-and-windows-compile-question-tp5264642p5265737.html
Sent from the Grass - Dev mailing list archive at Nabble.com.

Hi,

2016-05-05 1:19 GMT+02:00 Yang, Bo (yangb2) <yangb2@mail.uc.edu>:

This is Bo Yang from the University of Cincinnati. I am working with Moritz
and Markus for the GSoC 2016 project-- Additional segmentation algorithms
for i.segment [0]. Currently, the i.segment module only provides one

please link your page here [1]. Thanks, Martin

[1] https://trac.osgeo.org/grass/wiki/GSoC#a2016

rem Set environmental variables

rem

call %OSGEO4W_ROOT%\bin\o4w_env.bat

call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat

rem

rem Launch GRASS GIS

rem

"%GRASS_PYTHON%" "%GISBASE%\etc\grass71.py" %*

rem

rem Pause on error

rem

if %ERRORLEVEL% GEQ 1 pause

[0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms

[1] https://trac.osgeo.org/grass/wiki/CompileOnWindows

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa

Hi Martin,

Nailed it! Thanks for asking.

Best,
Bo Yang

-----Original Message-----
From: Martin Landa [mailto:landa.martin@gmail.com]
Sent: Wednesday, May 11, 2016 5:32 AM
To: Yang, Bo (yangb2) <yangb2@mail.uc.edu>
Cc: grass-dev@lists.osgeo.org; Markus Metz <markus.metz.giswork@gmail.com>
Subject: Re: [GRASS-dev] Seeking advices for image segmentation algorithms and windows compile question

Hi,

2016-05-05 1:19 GMT+02:00 Yang, Bo (yangb2) <yangb2@mail.uc.edu>:

This is Bo Yang from the University of Cincinnati. I am working with
Moritz and Markus for the GSoC 2016 project-- Additional segmentation
algorithms for i.segment [0]. Currently, the i.segment module only
provides one

please link your page here [1]. Thanks, Martin

[1] https://trac.osgeo.org/grass/wiki/GSoC#a2016

rem Set environmental variables

rem

call %OSGEO4W_ROOT%\bin\o4w_env.bat

call %OSGEO4W_ROOT%\apps\grass\grass-7.1.svn\etc\env.bat

rem

rem Launch GRASS GIS

rem

"%GRASS_PYTHON%" "%GISBASE%\etc\grass71.py" %*

rem

rem Pause on error

rem

if %ERRORLEVEL% GEQ 1 pause

[0] https://wiki.osgeo.org/wiki/GRASS_GSoC_2016_Segment_Algorithms

[1] https://trac.osgeo.org/grass/wiki/CompileOnWindows

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

--
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa