From 4c67ce4397b2b4ba9adae97a2413d3ccd7593ce7 Mon Sep 17 00:00:00 2001 From: "Ola Chr. Vaage" Date: Mon, 20 Jul 2026 15:58:11 +0200 Subject: [PATCH 1/3] Fix macOS @rpath install-name id for ros_type_introspection The dylib was built with a bare install-name id ('libros_type_introspection.dylib') because the old cmake_minimum_required leaves policy CMP0042 = OLD (MACOSX_RPATH off). Consumers then record the bare dependency name and dyld cannot resolve it from the environment lib dir, so all plotjuggler-ros plugins (DataLoadROS / DataStreamROS / RosTopicPublisher) fail to dlopen on osx-64 and osx-arm64 -- PlotJuggler ends up with no .bag loader. Set CMAKE_MACOSX_RPATH ON so the library advertises an @rpath/libros_type_introspection.dylib install name. This fixes all consumers at the source. No-op on Linux/Windows. --- patch/ros-noetic-ros-type-introspection.patch | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/patch/ros-noetic-ros-type-introspection.patch b/patch/ros-noetic-ros-type-introspection.patch index ee52bb58f..1e2c7ef09 100644 --- a/patch/ros-noetic-ros-type-introspection.patch +++ b/patch/ros-noetic-ros-type-introspection.patch @@ -2,12 +2,18 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt index 32fda3d..777de2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -9,7 +9,7 @@ find_package(catkin REQUIRED COMPONENTS +@@ -9,7 +9,13 @@ find_package(catkin REQUIRED COMPONENTS ) # Build flags -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 ") ++ ++# macOS: emit an @rpath install-name id for the built dylib. The old ++# cmake_minimum_required leaves policy CMP0042 = OLD, so without this the ++# library id is a bare 'libros_type_introspection.dylib' and @rpath resolution ++# fails for every consumer (e.g. the plotjuggler-ros plugins). ++set(CMAKE_MACOSX_RPATH ON) catkin_package( INCLUDE_DIRS include From db92c0cf25ffaa02ccc32299b753bbfe5cf20b10 Mon Sep 17 00:00:00 2001 From: Tobias Fischer Date: Tue, 21 Jul 2026 09:00:22 +1000 Subject: [PATCH 2/3] Update build number for next full rebuild --- vinca.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vinca.yaml b/vinca.yaml index 481c122bb..81d6c8952 100644 --- a/vinca.yaml +++ b/vinca.yaml @@ -5,7 +5,7 @@ conda_index: - robostack.yaml - packages-ignore.yaml -# Reminder for next full rebuild, the next build number should be 25 +# Reminder for next full rebuild, the next build number should be 26 build_number: 24 mutex_package: From 46f845be3d2615f50a08046d1cfbe25d912fdf7f Mon Sep 17 00:00:00 2001 From: Tobias Fischer Date: Tue, 21 Jul 2026 09:00:28 +1000 Subject: [PATCH 3/3] Update pkg_additional_info.yaml with new section Added ros_type_introspection with build number. --- pkg_additional_info.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkg_additional_info.yaml b/pkg_additional_info.yaml index b822c5d79..c87b3acae 100644 --- a/pkg_additional_info.yaml +++ b/pkg_additional_info.yaml @@ -70,3 +70,7 @@ apriltag: additional_cmake_args: "-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON" apriltag_ros: additional_cmake_args: "-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON" + +# Remove everything after this line on a full rebuild +ros_type_introspection: + build_number: 25