Skip to content

OptiTrack on ROS2 Humble: prevent NatNet ABI link failures, fix model-def segfault #29

Description

@Lorite
  • Problem:
    • Ubuntu 22.04 / ROS2 Humble users can hit linker failures when closed-source NatNet binaries require newer GLIBC/GLIBCXX.
    • Runtime segfault occurred in OptiTrack model definition parsing with malformed/newer packet layouts.
  • Fix summary:
    • Force closed-source OptiTrack backend OFF in parent CMake cache; install libNatNet only when that backend is enabled.
    • Harden parseModelDef with bounds checks and safe string consumption.
    • Make interface binding configurable with interface_ip fallback to 0.0.0.0.
    • Keep dependency scope minimal: include NatNetSDKCrossplatform bump only (no vrpn/vicon bump).
  • Validation:
    • colcon build --symlink-install --packages-select motion_capture_tracking passed.
    • Runtime no longer segfaults at startup with type:=optitrack.
  • PR:
    • Will be opened from Lorite/motion_capture_tracking:ros2 to IMRCLab/motion_capture_tracking:ros2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions