ethz-asl / segmap

A map representation based on 3D segments
BSD 3-Clause "New" or "Revised" License
1.07k stars 393 forks source link

Unable to debug segmapper using clion #118

Open maverick019 opened 5 years ago

maverick019 commented 5 years ago

Hi, I am trying to debug segmapper using clion and I am facing multiple errors while building it. But the build via command line woks successfully. the errors I face: a. Invalid VCS root mappings The following directories are registered as VCS roots, but they are not: <Proj…gmapper/catkin_simple <Proj…o_world/catkin_simple b. Cannot find any CMake profile c. CMake Error at CMakeLists.txt:6 (find_package): By not providing "Findcatkin_simple.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "catkin_simple", but CMake did not find one.

Could not find a package configuration file provided by "catkin_simple" (requested version 0.1.0) with any of the following names:

catkin_simpleConfig.cmake
catkin_simple-config.cmake

Add the installation prefix of "catkin_simple" to CMAKE_PREFIX_PATH or set "catkin_simple_DIR" to a directory containing one of the above files. If "catkin_simple" provides a separate development package or SDK, be sure it has been installed. d. CMake Error at CMakeLists.txt:1425 (add_executable): Cannot find source file:

logs/catkin_simple/build.cache-manifest.056.log

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm .hpp .hxx .in .txx

CMake Error at CMakeLists.txt:1425 (add_executable): No SOURCES given to target: SegMap

Do let me know if there is a way we can successfully debug using clion? Also I'd like to know if there is a successful build for the sources using catkin_make?

smauq commented 5 years ago

I have personally no experience building or debugging catkin projects with clion. I normally use either gdb or valgrind from the terminal interface.

How I debug is by changing the build flag to debug mode

catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release

You will need to check out this branch which has a small fix to compiling with debugging enabled https://github.com/ethz-asl/segmap/tree/post-fixes and then run

catkin build segmapper

Then you in the launch file on this line you can change the nodes launch-prefix to something like gdb -ex run --args or valgrind for example are the most common ones I use. For a more detailed list of available examples you can see the ros wiki.