I have been trying to build a collision detection node but seem to be running into issues. I am getting the error below: [bt_navigator-13] ERROR loading library [libsdr_behaviors__check_collision_condition.so]: can't find symbol [BT_RegisterNodesFromPlugin]
I have been trying to model my code after the code in the nav2_recoveries project because they already have a isCollisionFree function that should do this. I am just trying to pull this out so collision detection can be used as a condition node instead of being hidden within the nav2_recovery behaviors.
I have the macro to register the node in the .cpp file: #include "pluginlib/class_list_macros.hpp" PLUGINLIB_EXPORT_CLASS(sdr_behaviors::CheckCollisionCondition, nav2_core::Recovery)
sdr_behaviors is the name space and CheckCollisionCondition is the class name. The .so is being created in the install folder, but for some reason I keep getting the error above. I believe this is similar to the issue #102 but that did not seem to fix my issue.
Please let me know if there is any information I can provide to help get this working!
The text was updated successfully, but these errors were encountered:
Hi @kevinlyu1,
I have a similar problem, did you find a solution?
I'm trying to figure out how to register custom ros2 action interfaces as BehaviorTree.CPP actions. I based the code on the nav2_behavior_tree package.
It compiles without complaining but I get this error when starting the tree: ERROR loading library [librelox_sleep_action_bt_node.so]: can't find symbol [BT_RegisterNodesFromPlugin]
Turns out I was missing target_compile_definitions(${bt_plugin} PRIVATE BT_PLUGIN_EXPORT) in my CMakeLists.txt
Not exactly sure what that does, but it seems to have fixed the problem.
Hi Davide,
I have been trying to build a collision detection node but seem to be running into issues. I am getting the error below:
[bt_navigator-13] ERROR loading library [libsdr_behaviors__check_collision_condition.so]: can't find symbol [BT_RegisterNodesFromPlugin]I have been trying to model my code after the code in the nav2_recoveries project because they already have a
isCollisionFreefunction that should do this. I am just trying to pull this out so collision detection can be used as a condition node instead of being hidden within the nav2_recovery behaviors.I have the macro to register the node in the .cpp file:
#include "pluginlib/class_list_macros.hpp"PLUGINLIB_EXPORT_CLASS(sdr_behaviors::CheckCollisionCondition, nav2_core::Recovery)sdr_behaviors is the name space and CheckCollisionCondition is the class name. The .so is being created in the install folder, but for some reason I keep getting the error above. I believe this is similar to the issue #102 but that did not seem to fix my issue.
Please let me know if there is any information I can provide to help get this working!
The text was updated successfully, but these errors were encountered: