MIT-SPARK / Kimera-VIO-ROS

ROS wrapper for Kimera-VIO
BSD 2-Clause "Simplified" License
364 stars 151 forks source link

Error during building kimera-vio with opencv #99

Open josh-yang92 opened 3 years ago

josh-yang92 commented 3 years ago

Hi, I am currently trying to build kimera-vio-ros with docker but it fails to build with the error below when building kimera-vio:

Finished <<< kimera_rpgo                                  [ 30.1 seconds ]     
Starting >>> kimera_vio                                                        
_______________________________________________________________________________
Errors << kimera_vio:cmake /src/workspace/kimera_ws/logs/kimera_vio/build.cmake.000.log
CMake Error at /src/workspace/kimera_ws/src/Kimera-VIO/CMakeLists.txt:36 (find_package):
  Could not find a configuration file for package "OpenCV" that is compatible
  with requested version "3.3.1".

  The following configuration files were considered but not accepted:

    /usr/share/OpenCV/OpenCVConfig.cmake, version: 3.2.0

cd /src/workspace/kimera_ws/build/kimera_vio; catkin build --get-env kimera_vio | catkin env -si  /usr/bin/cmake /src/workspace/kimera_ws/src/Kimera-VIO --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX=/src/workspace/kimera_ws/devel -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=OFF; cd -
...............................................................................
Failed << kimera_vio:cmake                              [ Exited with code 1 ] 
Failed <<< kimera_vio                                   [ 3.6 seconds ]        
Abandoned <<< kimera_vio_ros                               [ Unrelated job failed ]
_______________________________________________________________________________
Warnings << opencv3_catkin:make /src/workspace/kimera_ws/logs/opencv3_catkin/build.make.000.log
make[3]: warning: -jN forced in submake: disabling jobserver mode.
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
cc1: warning: '-Werror=' argument '-Werror=non-virtual-dtor' is not valid for C
In member function 'void cv::EigenvalueDecomposition::compute(cv::InputArray, bool)':
cc1plus: warning: assuming signed overflow does not occur when assuming that (X - c) > X is always false [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp: In member function 'virtual void cv::xfeatures2d::SURFInvoker::operator()(const cv::Range&) const':
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
 }
 ^
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:1009:1: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
     void operator()(const Range& range) const CV_OVERRIDE
          ^~~~~~~~
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
/src/workspace/kimera_ws/build/opencv3_catkin/opencv3_contrib_src/modules/xfeatures2d/src/surf.cpp:566:10: warning: assuming signed overflow does not occur when assuming that (X + c) >= X is always true [-Wstrict-overflow]
make[3]: warning: -jN forced in submake: disabling jobserver mode.
cd /src/workspace/kimera_ws/build/opencv3_catkin; catkin build --get-env opencv3_catkin | catkin env -si  /usr/bin/make --jobserver-fds=6,7 -j; cd -
...............................................................................
Finished <<< opencv3_catkin                               [ 6 minutes and 13.0 seconds ]
[build] Summary: 14 of 16 packages succeeded.                                  
[build] Ignored: None.                                                         
[build] Warnings: 9 packages succeeded with warnings.                          
[build] Abandoned: 1 packages were abandoned.                                  
[build] Failed: 1 packages failed.                                             
[build] Runtime: 8 minutes and 18.2 seconds total.                             
[build] Note: Workspace packages have changed, please re-source setup files to use them.

I have followed exactly as instructed (pretty much 'copy and paste'd into my Dockerfile) in the installation page. I have checked for the error in other issues and it shouldn't exist anymore?

I am using docker base image: nvidia/cudagl:10.1-runtime-ubuntu18.04 and included ros-melodic-full-desktop installation in the Dockerfile.

Things I have tried (separately and in combination of):

0) as originally instructed 1) git checkout on the develop branch on gtsam 2) git checkout on the last tested commits for every package/repo (according to the .rosinstall file) 3) changing the required OpenCV version in the CMakeLists.txt in Kimera-VIO 4) changing the base image to ubuntu:bionic

Would you be able to give me some guidance please?

Thank you!

John-Mccarty commented 2 years ago

I have also same issue did you find any solution?