lukasvst / dm-vio-ros

ROS wrapper for DM-VIO: Delayed Marginalization Visual-Inertial Odometry
GNU General Public License v3.0
111 stars 21 forks source link

Build Error IOWrapper #1

Closed hanskumarKEF closed 1 year ago

hanskumarKEF commented 1 year ago

Hi, When running catkin_make, I come upon the following error. Was wondering where this file was located and if I forgot to link it properly?

fatal error: IOWrapper/Output3DWrapper.h: No such file or directory

include "IOWrapper/Output3DWrapper.h"

lukasvst commented 1 year ago

This file is in the main DM-VIO project https://github.com/lukasvst/dm-vio/tree/master/src/dso/IOWrapper and should be in the include directories. What is the value of DMVIO_BUILD (e.g. run echo $DMVIO_BUILD in the terminal)? It needs to be a direct subfolder of the location you cloned DM-VIO in (e.g. /home/user/dm-vio/cmake-build-relwithdebinfo)

hanskumarKEF commented 1 year ago

Thanks for quick reply.

I had an error in the name of this build folder that I was able to resolve. Still running into an issue building the ros wrapper, however.

image

have you seen this error before, i tried making dm-vio with "make CFLAGS=-fPIE", but that did not resolve this issue

lukasvst commented 1 year ago

Interesting, I haven't seen this error before. Maybe can you try adding the following line to https://github.com/lukasvst/dm-vio/blob/master/CMakeLists.txt#L42 set(CMAKE_POSITION_INDEPENDENT_CODE ON) and then recompile everything?

Alternatively, you could try changing this line https://github.com/lukasvst/dm-vio/blob/master/CMakeLists.txt#L47 to "${SSE_FLAGS} -fPIC"

Otherwise, can you let me know your OS and ROS version? And do normal DM-VIO, and other ROS packages work?

hanskumarKEF commented 1 year ago

When I changed this line https://github.com/lukasvst/dm-vio/blob/master/CMakeLists.txt#L47 to "${SSE_FLAGS} -fPIC" everything compiles and runs great! Thank you!

shockwaveHe commented 1 year ago

Hi @lukasvst, I also get the error of IOWrapper. Here is my DMVIO_BUILD value: /home/yao/MSO_compare_alg/DM-VIO/dm-vio/build. Is there something else I need to config? Thanks!

lukasvst commented 1 year ago

Usually there is nothing else you need to configure, other than the instructions in the readme. Are you sure that the DMVIO_BUILD value is available to the cmake script (i.e. does it print out "Path to DM-VIO build folder is: ...") and that the path is correct?

shockwaveHe commented 1 year ago

@lukasvst I delete the devel and build folder and rebuild the stack. It works now. I guess there was cache error before. Thank you!