utexas-bwi / eband_local_planner

ROS Local planner based on the eband approach. Based on the original implementation by Christian Connette and Bhaskara Marathi. This local planner has been adapted primarily for differential drive robots, but still supports the original holonomic drive controls.
http://wiki.ros.org/eband_local_planner
105 stars 83 forks source link

Missing file eband_local_planner/EBandPlannerConfig.h when catkin build the ros-autom fork #24

Closed shenlirobot closed 6 years ago

shenlirobot commented 6 years ago

I was trying to build the fork ros-autom/eband_local_planner without doing sudo apt-get install ros-indigo-eband-local-planner. I have an error about the missing file eband_local_planner/EBandPlannerConfig.h.

But if I install the the release version of the original utexas-bwi/eband_local_planner first by $ sudo apt-get install ros-indigo-eband-local-planner first, I can build the ros-autom fork.

I think it might be a bug? But I am not sure about your implementation structure though :)

I really like the ros-autom fork because it has the dynamic reconfigure function.

Thank you!

piyushk commented 6 years ago

I can't comment about the ros-autom fork, so I will close this issue. If it's also happening here, please let me know.

We've just merged in dynamic reconfigure in #22. A few more updates are incoming, and then we'll make a new release.

piyushk commented 6 years ago

@Shentheman: I suddenly realized that the error you mentioned might be because of missing dependency on the generated config. See the add_dependencies calls here http://docs.ros.org/jade/api/catkin/html/howto/format1/dynamic_reconfiguration.html

add_dependencies(your_library ${your_package_EXPORTED_TARGETS})

In short, the package is compiling the library as well as generating the config, but doesn't know that the library depends on the config and the config must be generated first. This results in a race condition, and should lead to non-deterministic build success when you build from scratch.