Hi,
I’m new to ODM and have been trying to install it and get it up and running.
I successfully downloaded ODM (v0.3.1) and installed (bash configure.sh install) and updated my environment variables (~/.bashrc), I also updated my settings.yaml file to a project folder, then downloaded one of your example/test datasets (aukerman).
However when I go to run it to process the data I get a message saying “import error: no module named ecto”.
This is true whether I run it with python run.py or ./run.sh.
I’ve tried uninstalling and installing again, and also tried reinstalling. No success.
I also downloaded PCL and moved into the SuperBuild/download directory and then undertaken another install. Same results. I’m unable to get passed the import ecto line.
Can anybody please help me overcome this problem?
I can’t see any relevant solution that I’ve yet to try.
Seems to be a fairly common one.
I should point out:
- I’m new to linux so I take a “cook book” approach, meaning that if there isn’t an instruction to do something I’m not going to know that I need to do it
- its a brand new computer, the only other thing installed is the SNAP toolbox (Sentinel satellite data processing). So I hadn’t previously installed Python yet (do I need to do this before installing ODM)?
- My computer is running Ubuntu 18.04. is this where my problem lies? How might I overcome it to get ODM to work?
Thanks 
Hey @samfleming6
welcome!
Have you restarted the shell after setting the environment variables? https://github.com/OpenDroneMap/OpenDroneMap#environment-variables
Hi!
Yes, I even went as far as restarted my computer, and double checked the .bashrc file to make sure the amendments remained.
Even so, my understanding was that using the ./run.sh should use the correct env variables for that run (even if the bashrc is incorrect)? Happy to be wrong on that though.
Correct, run.sh
should take care of that.
If you cd
into SuperBuild/build
and issue:
make ecto
Do you get an error message?
Yes.
This is the feed I get:
[ 50%] Built target catkin
[ 56%] Performing configure step for ‘ecto’
– Using CATKIN_DEVEL_PREFIX: /home/username/Documents/OpenDroneMap_v0_3_1/SuperBuild/build/ecto/devel
– Using CMAKE_PREFIX_PATH:
– Using PYTHON_EXECUTABLE: /usr/bin/python
– Using Debian Python package layout
– Using empy: /usr/bin/empy
– Using CATKIN_ENABLE_TESTING: OFF
– catkin 0.6.16
– Boost version: 1.65.0
CMake Error at /usr/share/cmake-3.10/Modules/FindBoost.cmake:1947 (message):
Unable to find the requested Boost libraries.
Boost version: 1.65.0
Boost include path: /usr/local/include
Could not find the following Boost libraries:
boost_python
Some (but not all) of the required Boost libraries were found. You may
need to install these additional Boost libraries. Alternatively, set
BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
to the location of Boost.
Call Stack (most recent call first):
cmake/boost.cmake:28 (find_package)
CMakeLists.txt:67 (include)
– Boost version 1.65.0
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
– ecto commit:
– ecto tag (long):
– ecto tag (short):
– ecto last_mod:
– Configuring incomplete, errors occurred!
See also “/home/username/Documents/OpenDroneMap_v0_3_1/SuperBuild/build/ecto/CMakeFiles/CMakeOutput.log”.
See also “/home/username/Documents/OpenDroneMap_v0_3_1/SuperBuild/build/ecto/CMakeFiles/CMakeError.log”.
CMakeFiles/ecto.dir/build.make:109: recipe for target ‘ecto/stamp/ecto-configure’ failed
make[3]: *** [ecto/stamp/ecto-configure] Error 1
CMakeFiles/Makefile2:252: recipe for target ‘CMakeFiles/ecto.dir/all’ failed
make[2]: *** [CMakeFiles/ecto.dir/all] Error 2
CMakeFiles/Makefile2:264: recipe for target ‘CMakeFiles/ecto.dir/rule’ failed
make[1]: *** [CMakeFiles/ecto.dir/rule] Error 2
Makefile:183: recipe for target ‘ecto’ failed
make: *** [ecto] Error 2
Try installing boost python: apt install libboost-python
I get a message saying “Unable to locate package libboost-python” (had to do “sudo apt install libboost-python”). Advice?
I get that this is probably v simple stuff so I appreciate your patience and help 
Ah, sorry, use apt install libboost-python-dev
Cool. that worked.
still unable to make ecto, and getting the same error log as above.
I tried sudo make ecto and got a slightly different error message that seems to boil down to (ImportError: No module named catkin.environment_cache)
(also still getting the import error when i try to use run.sh).
Mm, I’m not sure. Are you running Ubuntu 16.04? Installation might have problems on different Linux systems.
Exactly same situation, but running Ubuntu 16.04.
export PYTHONPATH=$PYTHONPATH:/your/path/OpenDroneMap/SuperBuild/install/lib/python2.7/dist-packages
export PYTHONPATH=$PYTHONPATH:/your/path/OpenDroneMap/SuperBuild/src/opensfm
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/path/OpenDroneMap/SuperBuild/install/lib
I’m curious, if you run:
bash configure.sh reinstall 1
(pass 1 at the end of the command)
Are you able to make it work?
I’m on 18.04 so perhaps thats causing issues with installing packages?
reinstalling (with the 1) doesnt make a difference in my case
Yeah 18.04 isn’t officially supported as of yet. Would recommend using docker if you’re on 18.04.