Splitmerge fail with native build shutil.which() from grass_engine.py

I was building ODM native with Ubuntu 18.04. Things worked without split merge.
When I do use split merge, seems like the shutil.which() from opendm/grass_engine.py (line 19, line 20)is a Python 3.6 module and the run.py is using Python 2.7.17 from the run.sh.

It give me a attribute error. Any advices?

1 Like

Huh, that looks like a bug:

I noticed we use system.which (compatible with Python 2.x) for some checks, but then use shutil.which for others.

That’s not right. https://github.com/OpenDroneMap/ODM/blob/master/opendm/grass_engine.py#L18

Interested in fixing this by opening a pull request on GitHub?

Note that you need GRASS installed for this to work.

Sure, I’ll submit a pull request.

3 Likes