-
Notifications
You must be signed in to change notification settings - Fork 727
Description
Description
Adding MoveIt2 #include-line(s) to C++ project stops VS Code IntelliSense from working.
- #include <moveit/move_group_interface/move_group_interface.h>
or - #include <moveit/move_group/move_group_capability.h>
Adding other libraries or #include <moveit/move_group/capability_names.h> does not break functionality.
Your environment
- ROS Distro: Iron
- OS Version: Ubuntu 22.04
- Binary build
- ros-iron-moveit 2.8.0-1jammy.20240815.154016 amd64
- Default RMW
Steps to reproduce
After having set up VS Code with proper extensions (c/c++, ros, cmake etc), I can confirm IntelliSense is working both with error squiggles and autocomplete for a test c++-file.
#include <cstdio>
#include <rclcpp/rclcpp.hpp>
int main(int argc, char ** argv)
{
(void) argc;
(void) argv;
rclcpp::init(argc, argv);
auto const node = std::make_shared<rclcpp::Node>(
"hello_moveit",
rclcpp::NodeOptions().automatically_declare_parameters_from_overrides(true)
);
auto const logger = rclcpp::get_logger("hello_moveit");
// Next step goes here
// Shutdown ROS
rclcpp::shutdown();
printf("hello world hello_moveit package\n");
return 0;
}
As soon as I add #include for movit (from tutorial)
#include <moveit/move_group_interface/move_group_interface.h>
IntelliSense stops working completely. I get no include errors. Compiles ok with colcon.
Expected behaviour
I would expect IntelliSense to keep working, and allow me error squiggles and autocompletion for objects from the MoveIt-library as well as all others.
Actual behaviour
No errors are shown, nothing is autocompleted anymore until I remove the include.
Backtrace or Console output
Same thing happens even if moveit-#include is included from another header-file (hello_moveit.h)
I can autocomplete stuff from stdio, but if I add #include "hello_moveit.h" (which includes move_group_interface.h), IntelliSense stops again.

With move_group/capability_names.h it works, this would suggest that library include paths are ok.

Any ideas?

