ethz-asl / voxblox

A library for flexible voxel-based mapping, mainly focusing on truncated and Euclidean signed distance fields.
BSD 3-Clause "New" or "Revised" License
1.37k stars 357 forks source link

libvoxblox_proto.so: undefined symbol #400

Open gsznaier opened 2 years ago

gsznaier commented 2 years ago

Hi,

For a research project I am working on, I am trying to run voxblox in a conda environment based on the interesting article: https://wolfv.medium.com/ros-on-conda-forge-dca6827ac4b6 which allows ROS to be installed within a conda environment. Following the above article I was able to install ROS Noetic and run simple ROS publisher and subscriber nodes successfully. In addition, although I get a few warnings, I was also able to build successfully voxblox_ros using the command:

catkin build voxblox_ros

after first running:

cd ~/catkin_ws/src/
git clone git@github.com:ethz-asl/voxblox.git
wstool init . ./voxblox/voxblox_ssh.rosinstall
wstool update

However, when I try to run voxblox on the cow and lady dataset, I get the following ROS error on startup:

catkin_ws/devel/lib/voxblox_ros/tsdf_server: symbol lookup error: catkin_ws/devel/.private/voxblox/lib/libvoxblox_proto.so: undefined symbol: _ZN6google8protobuf8internal16InternalMetadataD1Ev

which causes voxblox to crash.

Unfortunately due the dependencies of other parts of the project I am working on I cannot switch to the recommend version ROS Kinetic or install ROS packages in the traditional way using sudo apt-get install. Any assistance in resolving this issue would be greatly appreciated!!