Comments (10)
Hmm, strange. I didn't see this kind of issue when building any of the native message packages... Could there be some boilerplate CMake missing?
from ros-humble.
Could this workaround be the problem? https://github.com/robotology-playground/yarp-ros2/blob/4ae984d11428491ea0b7c61162707cf49836897a/ros2_interfaces_ws/src/map2d_nws_ros2_msgs/CMakeLists.txt#L51-L54
from ros-humble.
Could this workaround be the problem? https://github.com/robotology-playground/yarp-ros2/blob/4ae984d11428491ea0b7c61162707cf49836897a/ros2_interfaces_ws/src/map2d_nws_ros2_msgs/CMakeLists.txt#L51-L54
I think this is unrelated, the problem happens even if you comment out that part.
To investigate the problem, I compared ros-galactic vs ros-humble, comparing the exact invocation of the compilation of the failing compilation unit:
Working:
"command": "C:\\PROGRA~2\\MIB055~1\\2019\\ENTERP~1\\VC\\Tools\\MSVC\\1429~1.301\\bin\\Hostx64\\x64\\cl.exe /nologo /TP -DFASTCDR_DYN_LINK -DFASTRTPS_DYN_LINK -DROSIDL_TYPESUPPORT_FASTRTPS_CPP_BUILDING_DLL_map2d_nws_ros2_msgs -DROS_PACKAGE_NAME=\\\"map2d_nws_ros2_msgs\\\" -IC:\\src\\yarp-ros2\\buildgalactic\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_generator_cpp -IC:\\src\\yarp-ros2\\buildgalactic\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_typesupport_fastrtps_cpp -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarpgalactic\\Library\\include -external:W0 /DWIN32 /D_WINDOWS /GR /EHsc /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG /W4 /w34101 /w34555 /w34189 /w35038 /w34715 -std:c++14 /Foros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\CMakeFiles\\map2d_nws_ros2_msgs__rosidl_typesupport_fastrtps_cpp.dir\\c93e36ceeabcb03fe94ad1ea268bccde\\srv\\detail\\dds_fastrtps\\get_map_by_name__type_support.cpp.obj /FdTARGET_COMPILE_PDB /FS -c C:\\src\\yarp-ros2\\buildgalactic\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_typesupport_fastrtps_cpp\\map2d_nws_ros2_msgs\\srv\\detail\\dds_fastrtps\\get_map_by_name__type_support.cpp",
Not Working:
"command": "C:\\PROGRA~2\\MIB055~1\\2019\\ENTERP~1\\VC\\Tools\\MSVC\\1429~1.301\\bin\\Hostx64\\x64\\cl.exe /nologo /TP -DFASTCDR_DYN_LINK -DROS_PACKAGE_NAME=\\\"map2d_nws_ros2_msgs\\\" -D_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING -IC:\\src\\yarp-ros2\\buildhumble\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_typesupport_fastrtps_cpp -IC:\\src\\yarp-ros2\\buildhumble\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_generator_cpp -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rmw -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rcutils -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rosidl_runtime_c -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rosidl_typesupport_interface -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rosidl_runtime_cpp -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\rosidl_typesupport_fastrtps_cpp -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\nav_msgs -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\builtin_interfaces -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\geometry_msgs -external:IC:\\Users\\STraversaro\\AppData\\Local\\mambaforge\\envs\\yarphumble\\Library\\include\\std_msgs -external:W0 /DWIN32 /D_WINDOWS /GR /EHsc /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG /W4 -std:c++14 /Foros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\CMakeFiles\\map2d_nws_ros2_msgs__rosidl_typesupport_fastrtps_cpp.dir\\c93e36ceeabcb03fe94ad1ea268bccde\\srv\\detail\\dds_fastrtps\\get_map_by_name__type_support.cpp.obj /FdTARGET_COMPILE_PDB /FS -c C:\\src\\yarp-ros2\\buildhumble\\ros2_interfaces_ws\\src\\map2d_nws_ros2_msgs\\rosidl_typesupport_fastrtps_cpp\\map2d_nws_ros2_msgs\\srv\\detail\\dds_fastrtps\\get_map_by_name__type_support.cpp",
The main difference is that in the galactic version -DROSIDL_TYPESUPPORT_FASTRTPS_CPP_BUILDING_DLL_map2d_nws_ros2_msgs
is defined, while it is not defined in Humble.
from ros-humble.
Related code:
- Galactic: https://github.com/ros2/rosidl_typesupport_fastrtps/blob/galactic/rosidl_typesupport_fastrtps_cpp/cmake/rosidl_typesupport_fastrtps_cpp_generate_interfaces.cmake#L119
- Humble: https://github.com/ros2/rosidl_typesupport_fastrtps/blob/humble/rosidl_typesupport_fastrtps_cpp/cmake/rosidl_typesupport_fastrtps_cpp_generate_interfaces.cmake#L125
from ros-humble.
Manually changing the related code to the Galactic version makes the library work, so I think that indeed it is a regression due to ros2/rosidl_typesupport_fastrtps#87 .
from ros-humble.
Ok, I understood the problem, and it will probably take a bit of time for describing it and opening appropriate issue in the related repositories. However, the good news is that it occurs only if you compile a repo with BUILD_SHARED_LIBS
set to OFF
, if you set BUILD_SHARED_LIBS
set to ON
everything works fine.
from ros-humble.
Ah.. shouldn't we always build shared libs in our case?
from ros-humble.
Ah.. shouldn't we always build shared libs in our case?
Yes, the problem is that the downstream repo (i.e. https://github.com/robotology-playground/yarp-ros2) was hardcoding BUILD_SHARED_LIBS
to OFF, not a problem of our packages. Indeed, I think the issue is not related to robostack packaging at all, but I would leave it open until I open an appropraite issue upstream.
from ros-humble.
I think we can close this now that an upstream issue was created: ros2/rosidl_typesupport_fastrtps#90
from ros-humble.
Sure, thanks for closing. I forgot close it myself after opening the issue upstream.
from ros-humble.
Related Issues (20)
- package 'moveit2_tutorials' not found HOT 2
- Strange behaviour on initialising the env compared to native install of ROS Humble HOT 6
- Important: libprotobuf==4.25.1 needs to be installed for gazebo_ros_plugins to work with ros2-distro-mutex==0.5.0=humble HOT 3
- ROS Humble not installed correctly on macOS HOT 6
- Package request: libcamera HOT 5
- Gazebo not publishing topics HOT 4
- Moveit motion planning for Rviz not finding plugin in library HOT 18
- Package request: ros-humble-moveit-planners-chomp HOT 2
- Package request: ros-humble-motion-capture-tracking HOT 1
- laserscan plugin not found by Gazebo HOT 13
- ros-humble-gazebo-ros and ros-humble-ros-gz cannot be installed at the same time HOT 7
- Fastdds server not working as expected in MacOS HOT 2
- Building Python packages raises ModuleNotFoundError: No module named 'setuptools.extern' on new installation HOT 2
- Colcon buld failure for a custom message on ROS 2 MacOS M2 (already following FAQ) HOT 7
- Error loading server extension jupyros ImportError: Error importing numpy: HOT 5
- Package gazebo-ros is not starting the service /spawn_entity HOT 3
- Ros-Humble-Gazebo-Ros-Pkgs Not Installing Gazebo ROS API Plugins on OSX-arm64 HOT 4
- CMake Error at CMakeLists.txt:10 (find_package): By not providing "Findcatkin.cmake" in CMAKE_MODULE_PATH from colcon build HOT 6
- ros-humble-gazebo-ros2-control : Gazebo Ros2 Control Plugin Not Loading HOT 2
- Ament tools no longer in bin directory, and therefore not on path
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ros-humble.