From a527d20943229884037045e0e68bf63c0d8544f8 Mon Sep 17 00:00:00 2001 From: Ryohei Sasaki Date: Sun, 7 Apr 2024 10:19:42 +0900 Subject: [PATCH 1/4] Add eagleye.repos (#329) --- README.md | 9 +++------ eagleye.repos | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 eagleye.repos diff --git a/README.md b/README.md index 51aa0a6a..6887f285 100755 --- a/README.md +++ b/README.md @@ -40,18 +40,15 @@ Clone and Build MapIV's fork of [RTKLIB](https://github.com/MapIV/rtklib_ros_bri cd $HOME/RTKLIB/lib/iers/gcc/ make cd $HOME/RTKLIB/app/consapp - make + make ### ROS Packages Clone and build the necessary packages for Eagleye. ([rtklib_ros_bridge](https://github.com/MapIV/rtklib_ros_bridge/tree/ros2-v0.1.0), [nmea_ros_bridge](https://github.com/MapIV/nmea_ros_bridge/tree/ros2-v0.1.0)) cd $HOME/catkin_ws/src - git clone https://github.com/MapIV/eagleye.git -b main-ros2 --recursive - git clone https://github.com/MapIV/rtklib_ros_bridge.git -b ros2-v0.1.0 - git clone https://github.com/MapIV/llh_converter.git -b ros2 - git clone https://github.com/MapIV/nmea_ros_bridge.git -b ros2-v0.1.0 - git clone https://github.com/MapIV/gnss_compass_ros.git -b main-ros2 + git clone https://github.com/MapIV/eagleye.git -b main-ros2 + vcs import . < eagleye/eagleye.repos sudo apt-get install -y libgeographic-dev geographiclib-tools geographiclib-doc sudo geographiclib-get-geoids best sudo mkdir /usr/share/GSIGEO diff --git a/eagleye.repos b/eagleye.repos new file mode 100644 index 00000000..8e1d06b8 --- /dev/null +++ b/eagleye.repos @@ -0,0 +1,17 @@ +repositories: + rtklib_ros_bridge: + type: git + url: https://github.com/MapIV/rtklib_ros_bridge.git + version: ros2-v0.1.0 + llh_converter: + type: git + url: https://github.com/MapIV/llh_converter.git + version: ros2 + nmea_ros_bridge: + type: git + url: https://github.com/MapIV/nmea_ros_bridge.git + version: ros2-v0.1.0 + gnss_compass_ros: + type: git + url: https://github.com/MapIV/gnss_compass_ros.git + version: main-ros2 \ No newline at end of file From b2a10bde58f80e4730af957f56bc9ce31972497f Mon Sep 17 00:00:00 2001 From: Ryohei Sasaki Date: Mon, 22 Jul 2024 10:51:53 +0900 Subject: [PATCH 2/4] Add setentrio msgs for velocity source (#336) --- eagleye_rt/config/README.md | 2 +- eagleye_rt/config/eagleye_config.yaml | 2 +- eagleye_util/gnss_converter/CMakeLists.txt | 1 + eagleye_util/gnss_converter/package.xml | 5 ++- .../src/gnss_converter_node.cpp | 37 +++++++++++++++++++ 5 files changed, 44 insertions(+), 3 deletions(-) diff --git a/eagleye_rt/config/README.md b/eagleye_rt/config/README.md index 7e0046c0..caae6846 100644 --- a/eagleye_rt/config/README.md +++ b/eagleye_rt/config/README.md @@ -17,7 +17,7 @@ The parameters for estimation in Eagleye can be set in the `config/eagleye_confi | imu_topic | string | Topic name to be subscribed to in node (sensor_msgs/Imu.msg) | /imu/data_raw | | twist.twist_type | int | Topic type to be subscribed to in node (TwistStamped : 0, TwistWithCovarianceStamped: 1) | 0 | | twist.twist_topic | string | Topic name to be subscribed to in node | /can_twist | -| gnss.velocity_source_type | int | Topic type to be subscribed to in node (rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, ublox_msgs/NavPVT: 2, geometry_msgs/TwistWithCovarianceStamped: 3) | 0 | +| gnss.velocity_source_type | int | Topic type to be subscribed to in node (rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, ublox_msgs/NavPVT: 2, geometry_msgs/TwistWithCovarianceStamped: 3, septentrio_gnss_driver/PVTGeodetic: 4) | 0 | | gnss.velocity_source_topic | string | Topic name to be subscribed to in node | /rtklib_nav | | gnss.llh_source_type | int | Topic type to be subscribed to in node (rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, sensor_msgs/NavSatFix: 2) | 0 | | gnss.llh_source_topic | string | Topic name to be subscribed to in node | /rtklib_nav | diff --git a/eagleye_rt/config/eagleye_config.yaml b/eagleye_rt/config/eagleye_config.yaml index fa858856..a6260ab2 100644 --- a/eagleye_rt/config/eagleye_config.yaml +++ b/eagleye_rt/config/eagleye_config.yaml @@ -10,7 +10,7 @@ twist_topic: /can_twist imu_topic: /imu/data_raw gnss: - velocity_source_type: 0 # rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, ublox_msgs/NavPVT: 2, geometry_msgs/TwistWithCovarianceStamped: 3 + velocity_source_type: 0 # rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, ublox_msgs/NavPVT: 2, geometry_msgs/TwistWithCovarianceStamped: 3, septentrio_gnss_driver/PVTGeodetic: 4 velocity_source_topic: /rtklib_nav llh_source_type: 0 # rtklib_msgs/RtklibNav: 0, nmea_msgs/Sentence: 1, sensor_msgs/NavSatFix: 2 llh_source_topic: /rtklib_nav diff --git a/eagleye_util/gnss_converter/CMakeLists.txt b/eagleye_util/gnss_converter/CMakeLists.txt index a3e0aec1..ecd20f84 100644 --- a/eagleye_util/gnss_converter/CMakeLists.txt +++ b/eagleye_util/gnss_converter/CMakeLists.txt @@ -23,6 +23,7 @@ find_package(ament_cmake_auto REQUIRED) ament_auto_find_build_dependencies() include_directories(include) +find_package(Boost REQUIRED COMPONENTS system thread regex chrono) ament_auto_add_executable(gnss_converter src/nmea2fix_core.cpp diff --git a/eagleye_util/gnss_converter/package.xml b/eagleye_util/gnss_converter/package.xml index 82374cc4..6c89bed7 100644 --- a/eagleye_util/gnss_converter/package.xml +++ b/eagleye_util/gnss_converter/package.xml @@ -13,6 +13,7 @@ sensor_msgs nmea_msgs ublox_msgs + septentrio_gnss_driver rtklib_msgs eagleye_coordinate eagleye_navigation @@ -22,6 +23,7 @@ sensor_msgs nmea_msgs ublox_msgs + septentrio_gnss_driver rtklib_msgs eagleye_coordinate eagleye_navigation @@ -31,12 +33,13 @@ sensor_msgs nmea_msgs ublox_msgs + septentrio_gnss_driver rtklib_msgs eagleye_coordinate eagleye_navigation tf2_ros tf2_geometry_msgs - + ament_lint_auto ament_lint_common diff --git a/eagleye_util/gnss_converter/src/gnss_converter_node.cpp b/eagleye_util/gnss_converter/src/gnss_converter_node.cpp index 02a93e7e..741988be 100644 --- a/eagleye_util/gnss_converter/src/gnss_converter_node.cpp +++ b/eagleye_util/gnss_converter/src/gnss_converter_node.cpp @@ -2,6 +2,7 @@ #include "rclcpp/rclcpp.hpp" #include "gnss_converter/nmea2fix.hpp" #include +#include #include #include "eagleye_coordinate/eagleye_coordinate.hpp" #include "eagleye_navigation/eagleye_navigation.hpp" @@ -107,6 +108,36 @@ void navpvt_callback(const ublox_msgs::msg::NavPVT::ConstSharedPtr msg) rtklib_nav_pub->publish(r); } +void pvtgeodetic_callback(const septentrio_gnss_driver::msg::PVTGeodetic::ConstSharedPtr msg) +{ + rtklib_msgs::msg::RtklibNav r; + r.header.frame_id = "gps"; + r.header.stamp = msg->header.stamp; + if (nav_msg_ptr != nullptr) + r.status = *nav_msg_ptr; + r.tow = msg->block_header.tow; + + double llh[3]; + llh[0] = msg->latitude; + llh[1] = msg->longitude; + llh[2] = msg->height; + double ecef_pos[3]; + llh2xyz(llh, ecef_pos); + + double enu_vel[3] = {msg->ve, msg->vn, msg->vu}; + double ecef_vel[3]; + enu2xyz_vel(enu_vel, ecef_pos, ecef_vel); + + r.ecef_pos.x = ecef_pos[0]; + r.ecef_pos.y = ecef_pos[1]; + r.ecef_pos.z = ecef_pos[2]; + r.ecef_vel.x = ecef_vel[0]; + r.ecef_vel.y = ecef_vel[1]; + r.ecef_vel.z = ecef_vel[2]; + + rtklib_nav_pub->publish(r); +} + void gnss_velocity_callback(const geometry_msgs::msg::TwistWithCovarianceStamped::ConstSharedPtr msg) { if(msg->twist.covariance[0] > twist_covariance_thresh) @@ -161,6 +192,7 @@ int main(int argc, char** argv) rclcpp::Subscription::SharedPtr nmea_sentence_sub; rclcpp::Subscription::SharedPtr navpvt_sub; rclcpp::Subscription::SharedPtr gnss_velocity_sub; + rclcpp::Subscription::SharedPtr pvtgeodetic_sub; rclcpp::Subscription::SharedPtr navsatfix_sub; node->declare_parameter("is_sub_antenna",is_sub_antenna); @@ -228,6 +260,11 @@ int main(int argc, char** argv) gnss_velocity_sub = node->create_subscription( velocity_source_topic, 1000, gnss_velocity_callback); } + else if(velocity_source_type == 4) + { + pvtgeodetic_sub = node->create_subscription( + velocity_source_topic, 1000, pvtgeodetic_callback); + } else { RCLCPP_ERROR(node->get_logger(),"Invalid velocity_source_type"); From 28193d7814f3a549dd4ff01faff0a720395fecd3 Mon Sep 17 00:00:00 2001 From: rsasaki0109 Date: Fri, 27 Mar 2026 00:45:15 +0900 Subject: [PATCH 3/4] fix: improve Jazzy build compatibility --- .github/workflows/build.yml | 63 +++++++++++++++++++++++- eagleye_core/coordinate/CMakeLists.txt | 15 +++--- eagleye_core/coordinate/package.xml | 1 + eagleye_core/navigation/CMakeLists.txt | 3 +- eagleye_rt/CMakeLists.txt | 54 ++++++++++++++++++++ eagleye_rt/package.xml | 1 + eagleye_rt/src/tf_converted_imu.cpp | 40 +++++++-------- eagleye_util/geo_pose_fusion/package.xml | 1 + 8 files changed, 148 insertions(+), 30 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 11f9770c..e3460933 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,7 +16,7 @@ jobs: steps: - name: checkout - uses: actions/checkout@v1 + uses: actions/checkout@v4 - name: rosdep update run: | apt-get update @@ -41,4 +41,63 @@ jobs: cd ~/eagleye/ source /opt/ros/humble/setup.bash rosdep install --from-paths src --ignore-src -r -y - colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --catkin-skip-building-tests \ No newline at end of file + colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --catkin-skip-building-tests + + jazzy_build: + runs-on: ubuntu-24.04 + + container: ros:jazzy + services: + ros: + image: ros + + defaults: + run: + shell: bash + + steps: + - name: checkout + uses: actions/checkout@v4 + - name: rosdep update + run: | + apt-get update + rosdep update + - name: Create Workspace + run: | + mkdir -p ~/eagleye/src/ + cp -r "$(pwd)" ~/eagleye/src/ + - name: Clone rtklib_msgs + run: | + cd ~/eagleye/src/ + git clone https://github.com/MapIV/rtklib_ros_bridge.git -b ros2-v0.1.0 + - name: Clone llh_converter + run: | + cd ~/eagleye/src/ + git clone https://github.com/MapIV/llh_converter.git -b ros2 + - name: Patch llh_converter for Jazzy CI + run: | + python3 - <<'PY' + from pathlib import Path + + path = Path.home() / "eagleye/src/llh_converter/CMakeLists.txt" + text = path.read_text() + text = text.replace("${GeographicLib_INCLUDE_DIRS}", "${GeographicLib_INCLUDE_DIR}") + text = text.replace( + " PUBLIC\n $", + " PUBLIC\n ${GeographicLib_INCLUDE_DIR}\n $", + ) + text = text.replace( + "ament_export_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)", + "ament_export_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${GeographicLib_INCLUDE_DIR})", + ) + path.write_text(text) + PY + - name: Install GeographicLib + run: | + apt-get install -y libgeographiclib-dev geographiclib-tools geographiclib-doc + - name: Build + run: | + cd ~/eagleye/ + source /opt/ros/jazzy/setup.bash + rosdep install --from-paths src --ignore-src -r -y + colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --catkin-skip-building-tests diff --git a/eagleye_core/coordinate/CMakeLists.txt b/eagleye_core/coordinate/CMakeLists.txt index 1efe0df3..27726135 100755 --- a/eagleye_core/coordinate/CMakeLists.txt +++ b/eagleye_core/coordinate/CMakeLists.txt @@ -15,17 +15,17 @@ ament_auto_find_build_dependencies() find_package(PkgConfig) find_package(geodesy) + +# GeographicLib find_path(GeographicLib_INCLUDE_DIR GeographicLib/Config.h PATH_SUFFIXES GeographicLib ) -set(GeographicLib_LIBRARIES - NAMES Geographic -) +find_library(GeographicLib_LIBRARIES NAMES Geographic GeographicLib) include_directories( include ${PROJECT_SOURCE_DIR}/include - ${GeographicLib_INCLUDE_DIRS} + ${GeographicLib_INCLUDE_DIR} ) link_directories( /usr/local/lib @@ -47,11 +47,11 @@ ament_auto_add_library(eagleye_coordinate SHARED include/eagleye_coordinate/eagleye_coordinate.hpp ) -ament_export_include_directories(include) +ament_export_include_directories(include ${GeographicLib_INCLUDE_DIR}) ament_target_dependencies(eagleye_coordinate) target_link_libraries(eagleye_coordinate - Geographic + ${GeographicLib_LIBRARIES} ) install( @@ -62,6 +62,7 @@ install( target_include_directories(eagleye_coordinate PUBLIC + ${GeographicLib_INCLUDE_DIR} $ $ ) @@ -86,4 +87,4 @@ if(BUILD_TESTING) ament_lint_auto_find_test_dependencies() endif() -ament_auto_package() \ No newline at end of file +ament_auto_package() diff --git a/eagleye_core/coordinate/package.xml b/eagleye_core/coordinate/package.xml index fe132011..3b3b69e5 100644 --- a/eagleye_core/coordinate/package.xml +++ b/eagleye_core/coordinate/package.xml @@ -13,6 +13,7 @@ geodesy rclcpp geodesy + ament_index_cpp eigen geographic_info geographic_msgs diff --git a/eagleye_core/navigation/CMakeLists.txt b/eagleye_core/navigation/CMakeLists.txt index fa609835..0d94dd01 100755 --- a/eagleye_core/navigation/CMakeLists.txt +++ b/eagleye_core/navigation/CMakeLists.txt @@ -23,6 +23,7 @@ endif() find_package(ament_cmake_auto REQUIRED) find_package(eagleye_coordinate REQUIRED) find_package(PkgConfig REQUIRED) +find_package(yaml-cpp REQUIRED) ament_auto_find_build_dependencies() @@ -51,7 +52,7 @@ ament_auto_add_library(eagleye_navigation SHARED include/eagleye_navigation/eagleye_navigation.hpp ) -ament_auto_find_build_dependencies() +target_link_libraries(eagleye_navigation yaml-cpp) install(TARGETS eagleye_navigation INCLUDES DESTINATION include diff --git a/eagleye_rt/CMakeLists.txt b/eagleye_rt/CMakeLists.txt index c4664583..0a46bb09 100644 --- a/eagleye_rt/CMakeLists.txt +++ b/eagleye_rt/CMakeLists.txt @@ -41,14 +41,23 @@ ament_auto_add_executable(distance ament_auto_add_executable(heading_interpolate src/heading_interpolate_node.cpp ) +target_link_libraries(heading_interpolate + yaml-cpp +) ament_auto_add_executable(heading src/heading_node.cpp ) +target_link_libraries(heading + yaml-cpp +) ament_auto_add_executable(height src/height_node.cpp ) +target_link_libraries(height + yaml-cpp +) ament_auto_add_executable(monitor src/monitor_node.cpp @@ -57,62 +66,107 @@ ament_auto_add_executable(monitor ament_auto_add_executable(position_interpolate src/position_interpolate_node.cpp ) +target_link_libraries(position_interpolate + yaml-cpp +) ament_auto_add_executable(position src/position_node.cpp ) +target_link_libraries(position + yaml-cpp +) ament_auto_add_executable(slip_angle src/slip_angle_node.cpp ) +target_link_libraries(slip_angle + yaml-cpp +) ament_auto_add_executable(slip_coefficient src/slip_coefficient_node.cpp ) +target_link_libraries(slip_coefficient + yaml-cpp +) ament_auto_add_executable(enable_additional_rolling src/enable_additional_rolling_node.cpp ) +target_link_libraries(enable_additional_rolling + yaml-cpp +) ament_auto_add_executable(rolling src/rolling_node.cpp ) +target_link_libraries(rolling + yaml-cpp +) ament_auto_add_executable(smoothing src/smoothing_node.cpp ) +target_link_libraries(smoothing + yaml-cpp +) ament_auto_add_executable(trajectory src/trajectory_node.cpp ) +target_link_libraries(trajectory + yaml-cpp +) ament_auto_add_executable(velocity_scale_factor src/velocity_scale_factor_node.cpp ) +target_link_libraries(velocity_scale_factor + yaml-cpp +) ament_auto_add_executable(yaw_rate_offset src/yaw_rate_offset_node.cpp ) +target_link_libraries(yaw_rate_offset + yaml-cpp +) ament_auto_add_executable(yaw_rate_offset_stop src/yaw_rate_offset_stop_node.cpp ) +target_link_libraries(yaw_rate_offset_stop + yaml-cpp +) ament_auto_add_executable(angular_velocity_offset_stop src/angular_velocity_offset_stop_node.cpp ) +target_link_libraries(angular_velocity_offset_stop + yaml-cpp +) ament_auto_add_executable(rtk_dead_reckoning src/rtk_dead_reckoning_node.cpp ) +target_link_libraries(rtk_dead_reckoning + yaml-cpp +) ament_auto_add_executable(rtk_heading src/rtk_heading_node.cpp ) +target_link_libraries(rtk_heading + yaml-cpp +) ament_auto_add_executable(velocity_estimator src/velocity_estimator_node.cpp ) +target_link_libraries(velocity_estimator + yaml-cpp +) install(TARGETS tf_converted_imu diff --git a/eagleye_rt/package.xml b/eagleye_rt/package.xml index 1214acc5..abf93975 100644 --- a/eagleye_rt/package.xml +++ b/eagleye_rt/package.xml @@ -23,6 +23,7 @@ eagleye_msgs eagleye_coordinate eagleye_navigation + eagleye_tf diagnostic_updater tf2 tf2_ros diff --git a/eagleye_rt/src/tf_converted_imu.cpp b/eagleye_rt/src/tf_converted_imu.cpp index bd742040..43dd4f86 100644 --- a/eagleye_rt/src/tf_converted_imu.cpp +++ b/eagleye_rt/src/tf_converted_imu.cpp @@ -41,11 +41,11 @@ #else #include #endif -#include +#include #include -#include +#include -class TFConvertedIMU: public rclcpp::Node +class TFConvertedIMU : public rclcpp::Node { public: TFConvertedIMU(); @@ -65,14 +65,13 @@ class TFConvertedIMU: public rclcpp::Node std::string tf_base_link_frame_; void imu_callback(const sensor_msgs::msg::Imu::ConstSharedPtr msg); - }; TFConvertedIMU::TFConvertedIMU() : Node("eagleye_tf_converted_imu"), - clock_(RCL_ROS_TIME), - tfbuffer_(std::make_shared(clock_)), - tflistener_(tfbuffer_), - logger_(get_logger()) + clock_(RCL_ROS_TIME), + tfbuffer_(std::make_shared(clock_)), + tflistener_(tfbuffer_), + logger_(get_logger()) { std::string subscribe_imu_topic_name = "/imu/data_raw"; std::string publish_imu_topic_name = "imu/data_tf_converted"; @@ -85,27 +84,28 @@ TFConvertedIMU::TFConvertedIMU() : Node("eagleye_tf_converted_imu"), get_parameter("publish_imu_topic", publish_imu_topic_name); get_parameter("tf_gnss_frame.parent", tf_base_link_frame_); - std::cout<< "subscribe_imu_topic_name: " << subscribe_imu_topic_name << std::endl; - std::cout<< "publish_imu_topic_name: " << publish_imu_topic_name << std::endl; - std::cout<< "tf_base_link_frame: " << tf_base_link_frame_ << std::endl; + std::cout << "subscribe_imu_topic_name: " << subscribe_imu_topic_name << std::endl; + std::cout << "publish_imu_topic_name: " << publish_imu_topic_name << std::endl; + std::cout << "tf_base_link_frame: " << tf_base_link_frame_ << std::endl; - sub_ = create_subscription(subscribe_imu_topic_name, rclcpp::QoS(10), std::bind(&TFConvertedIMU::imu_callback, this, std::placeholders::_1)); + sub_ = create_subscription(subscribe_imu_topic_name, rclcpp::QoS(10), std::bind(&TFConvertedIMU::imu_callback, this, std::placeholders::_1)); pub_ = create_publisher("imu/data_tf_converted", rclcpp::QoS(10)); }; -TFConvertedIMU::~TFConvertedIMU(){}; +TFConvertedIMU::~TFConvertedIMU() {}; void TFConvertedIMU::imu_callback(const sensor_msgs::msg::Imu::ConstSharedPtr msg) { imu_ = *msg; tf_converted_imu_.header = imu_.header; - try { + try + { const geometry_msgs::msg::TransformStamped transform = tfbuffer_.lookupTransform( - tf_base_link_frame_, msg->header.frame_id, tf2::TimePointZero); + tf_base_link_frame_, msg->header.frame_id, tf2::TimePointZero); geometry_msgs::msg::Vector3Stamped angular_velocity, linear_acceleration, transformed_angular_velocity, transformed_linear_acceleration; - geometry_msgs::msg::Quaternion transformed_quaternion; + geometry_msgs::msg::Quaternion transformed_quaternion; angular_velocity.header = imu_.header; angular_velocity.vector = imu_.angular_velocity; @@ -126,8 +126,8 @@ void TFConvertedIMU::imu_callback(const sensor_msgs::msg::Imu::ConstSharedPtr ms tf_converted_imu_.linear_acceleration = transformed_linear_acceleration.vector; tf_converted_imu_.orientation = transformed_quaternion; - } - catch (tf2::TransformException& ex) + } + catch (tf2::TransformException &ex) { std::cout << "Failed to lookup transform" << std::endl; RCLCPP_WARN(rclcpp::get_logger("tf_converted_imu"), "Failed to lookup transform."); @@ -136,11 +136,11 @@ void TFConvertedIMU::imu_callback(const sensor_msgs::msg::Imu::ConstSharedPtr ms pub_->publish(tf_converted_imu_); }; -int main(int argc, char** argv) +int main(int argc, char **argv) { rclcpp::init(argc, argv); rclcpp::spin(std::make_shared()); return 0; -} \ No newline at end of file +} diff --git a/eagleye_util/geo_pose_fusion/package.xml b/eagleye_util/geo_pose_fusion/package.xml index 66c0170b..90f4aff6 100644 --- a/eagleye_util/geo_pose_fusion/package.xml +++ b/eagleye_util/geo_pose_fusion/package.xml @@ -23,6 +23,7 @@ ament_lint_auto ament_lint_common + ament_index_cpp tf2_geometry_msgs From 6a88f285804fa22ce805fe736542d36a10413b2e Mon Sep 17 00:00:00 2001 From: rsasaki0109 Date: Fri, 27 Mar 2026 00:56:15 +0900 Subject: [PATCH 4/4] ci: remove llh_converter workaround from jazzy build --- .github/workflows/build.yml | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e3460933..99248624 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -74,24 +74,6 @@ jobs: run: | cd ~/eagleye/src/ git clone https://github.com/MapIV/llh_converter.git -b ros2 - - name: Patch llh_converter for Jazzy CI - run: | - python3 - <<'PY' - from pathlib import Path - - path = Path.home() / "eagleye/src/llh_converter/CMakeLists.txt" - text = path.read_text() - text = text.replace("${GeographicLib_INCLUDE_DIRS}", "${GeographicLib_INCLUDE_DIR}") - text = text.replace( - " PUBLIC\n $", - " PUBLIC\n ${GeographicLib_INCLUDE_DIR}\n $", - ) - text = text.replace( - "ament_export_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)", - "ament_export_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${GeographicLib_INCLUDE_DIR})", - ) - path.write_text(text) - PY - name: Install GeographicLib run: | apt-get install -y libgeographiclib-dev geographiclib-tools geographiclib-doc