Code Monkey home page Code Monkey logo

Comments (10)

wolfv avatar wolfv commented on August 17, 2024

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.

wolfv avatar wolfv commented on August 17, 2024

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.

traversaro avatar traversaro commented on August 17, 2024

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.

traversaro avatar traversaro commented on August 17, 2024

Related code:

from ros-humble.

traversaro avatar traversaro commented on August 17, 2024

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.

traversaro avatar traversaro commented on August 17, 2024

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.

Tobias-Fischer avatar Tobias-Fischer commented on August 17, 2024

Ah.. shouldn't we always build shared libs in our case?

from ros-humble.

traversaro avatar traversaro commented on August 17, 2024

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.

Tobias-Fischer avatar Tobias-Fischer commented on August 17, 2024

I think we can close this now that an upstream issue was created: ros2/rosidl_typesupport_fastrtps#90

from ros-humble.

traversaro avatar traversaro commented on August 17, 2024

Sure, thanks for closing. I forgot close it myself after opening the issue upstream.

from ros-humble.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.