voxblox icon indicating copy to clipboard operation
voxblox copied to clipboard

Improve how the protobuf build folder is exported to depending packages

Open mfehr opened this issue 8 years ago • 4 comments

Referring to this line: https://github.com/ethz-asl/voxblox/blob/master/voxblox/CMakeLists.txt#L19

mfehr avatar May 12 '16 14:05 mfehr

Referring to exporting the voxblox build folder as an include path

helenol avatar May 12 '16 15:05 helenol

Hi, is the protobuf error this one?

Errors     << voxblox_ros:make /home/erwan/imagine_ws/logs/voxblox_ros/build.make.002.log                                                                                                                                          
/usr/bin/ld: CMakeFiles/visualize_tsdf.dir/src/visualize_tsdf.cc.o: undefined reference to symbol '_ZN6google8protobuf8internal13empty_string_B5cxx11E'
//usr/lib/x86_64-linux-gnu/libprotobuf.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [/home/erwan/imagine_ws/devel/.private/voxblox_ros/lib/voxblox_ros/visualize_tsdf] Error 1
make[1]: *** [CMakeFiles/visualize_tsdf.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/usr/bin/ld: CMakeFiles/voxblox_eval.dir/src/voxblox_eval.cc.o: undefined reference to symbol '_ZN6google8protobuf8internal13empty_string_B5cxx11E'
//usr/lib/x86_64-linux-gnu/libprotobuf.so.10: error adding symbols: DSO missing from command line

Basically, there seems to be a lib version issue between what is used in this visualizer and the latest version of protobuf (installed on my system, Ubuntu 18.04). Did anyone fix that already?

Thanks Erwan

r1d1 avatar Aug 12 '19 11:08 r1d1

Hi @r1d1 , doesn't look like that's related, this issue we opened a long time ago because we were not happy with how we exported the build folder into the include path of voxblox because of protobuf (here) I agree with you that your issue is probably related to a version mismatch. We have seen this happening if protobuf_catkin and system protobuf are somehow mixed in the workspace or it could just be that your system protobuf is not compatible. Maybe check which one is used when you build voxblox (this is happening here) and if protobuf_catkin is not present try adding it to your workspace, maybe this helps.

mfehr avatar Aug 12 '19 14:08 mfehr

I also got the error:

Errors     << voxblox_ros:make /home/{username}/catkin_ws/logs/voxblox_ros/build.make.002.log
/usr/bin/ld: CMakeFiles/visualize_tsdf.dir/src/visualize_tsdf.cc.o: undefined reference to symbol '_ZN6google8protobuf8internal13empty_string_B5cxx11E'
//usr/lib/x86_64-linux-gnu/libprotobuf.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [/home/{username}/catkin_ws/devel/.private/voxblox_ros/lib/voxblox_ros/visualize_tsdf] Error 1
make[1]: *** [CMakeFiles/visualize_tsdf.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/usr/bin/ld: CMakeFiles/voxblox_eval.dir/src/voxblox_eval.cc.o: undefined reference to symbol '_ZN6google8protobuf8internal13empty_string_B5cxx11E'
//usr/lib/x86_64-linux-gnu/libprotobuf.so.10: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [/home/{username}/catkin_ws/devel/.private/voxblox_ros/lib/voxblox_ros/voxblox_eval] Error 1
make[1]: *** [CMakeFiles/voxblox_eval.dir/all] Error 2
make: *** [all] Error 2

I git cloned protobuf_catkin into ~/catkin_ws/src/, as suggested, and cleaned previous builds. This solved the issue (when running catkin build voxblox_ros).

LucasWaelti avatar Feb 07 '20 10:02 LucasWaelti