Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Linking issue when installing from source #151

Open
bergercookie opened this issue Oct 12, 2020 · 5 comments
Open

[BUG] Linking issue when installing from source #151

bergercookie opened this issue Oct 12, 2020 · 5 comments
Labels

Comments

@bergercookie
Copy link

When I run the fetch gazebo simulation stack and fetch_navigation/fetch_nav.launch (installed from apt) it works fine.
However repeating the same procedure, after cloning fetch_ros (i.e., fetch_navigation) in my local workspace and after compiling the workspace packages with catkin_make, I'm getting the following error when running the navigation (I've the log in this ticket):

$ roslaunch fetch_navigation fetch_nav.launch

...

/opt/ros/melodic/lib/move_base/move_base: symbol lookup error: /home/user/ros_ws/devel/lib/libfetch_depth_layer.so: undefined symbol: _ZN2cv4rgbd9depthTo3dERKNS_11_InputArrayES3_RKNS_12_OutputArrayES3_

To Reproduce

  • Clone fetch_gazebo, and fetch_ros in the local workspace, and compile
  • roslaunch fetch_gazebo playground.launch on one window
  • roslaunch fetch_navigation fetch_nav.launch on the other --> this should fail due to an undefined symbol

catkin workspace (please complete the following information):

  • fetch_ros version: (e831ff0223ca55e8f4f1d6e5ee2ca49fd06ebe7)
  • Ubuntu version: 18.04
  • ROS version: latest melodic from apt

Additional context

Running this inside a ubuntu 18.04 docker.

fetch-undefined-symbol.txt

@moriarty
Copy link
Contributor

Have you installed all of the dependencies using rosdep?

When installing via apt, the package dependencies are installed automatically. Building from source in a Docker, will fail to compile without the compile time dependencies, and will fail to run without the execution time dependencies.

http://wiki.ros.org/rosdep#Install_dependency_of_a_particular_package

@moriarty
Copy link
Contributor

These Dockerfiles are out of date but both run rosdep.

ZebraDevs/fetch_gazebo#46

ZebraDevs/fetch_gazebo#75

@bergercookie bergercookie changed the title [BUG] short description [BUG] Linking issue when installing from source Oct 23, 2020
@bergercookie
Copy link
Author

bergercookie commented Oct 23, 2020

Have you installed all of the dependencies using rosdep?

I hadn't, no, good point.
However, having installed all the dependencies with rosdep, and having removed the devel/lib/libfetch_depth_layer.so generated object (so that it creates it again), I'm still getting this error.

I'm using catkin_make instead of catkin to compile, but I don't think that difference matters

@erelson
Copy link
Collaborator

erelson commented Oct 23, 2020

This is definitely odd. I haven't taken the time to try the repro (but thanks for the steps!)... a stab in the dark is: You could try putting a CATKIN_IGNORE in the fetch_depth_layer/ folder and do a clean build from there.

@bergercookie
Copy link
Author

You could try putting a CATKIN_IGNORE in the fetch_depth_layer/ folder and do a clean build from there.

Sure, that's actually my current mitigation; it compiles and executes the navigation gazebo demo successfully.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants