diff options
| author | CoprDistGit <infra@openeuler.org> | 2026-09-23 15:40:15 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2026-09-23 15:40:15 +0000 |
| commit | add2f21811a0ebde2ff25468ebe0fcb08ba6cb3a (patch) | |
| tree | 210a12e71e9b386a88ef10c9cff87a9ee2cc9f41 /kuka-iiqka-eac-driver.spec | |
| parent | dd0112f886de8b3f8791b2f8bed6479396e6fed8 (diff) | |
automatic import of ros-humble-kuka-iiqka-eac-driveropeneuler24.03_LTS_SP3
Diffstat (limited to 'kuka-iiqka-eac-driver.spec')
| -rw-r--r-- | kuka-iiqka-eac-driver.spec | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/kuka-iiqka-eac-driver.spec b/kuka-iiqka-eac-driver.spec index 6d5d3a7..9149701 100644 --- a/kuka-iiqka-eac-driver.spec +++ b/kuka-iiqka-eac-driver.spec @@ -4,7 +4,7 @@ Name: ros-%{ros_distro}-%{RosPkgName} Version: 1.1.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A ROS2 hardware interface for use with KUKA iiQKA OS License: Apache-2.0 URL: https://github.com/kroshu/kuka_drivers.git @@ -67,10 +67,17 @@ sed -i 's/Kuka::kuka-external-control-sdk/Kuka::kuka-external-control-sdk -labsl [ -f /opt/ros/%{ros_distro}/setup.sh ] && source /opt/ros/%{ros_distro}/setup.sh || true export PYTHONPATH=/opt/ros/%{ros_distro}/lib/python%{python3_version}/site-packages${PYTHONPATH:+:$PYTHONPATH} export PKG_CONFIG_PATH=/opt/ros/%{ros_distro}/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH} -cd kuka_iiqka_eac_driver + +# 源码 tarball 含完整 kuka_drivers.git 单体仓库。eulermaker 源中 +# ros-humble-kuka-drivers-core 仅 1.0.0,缺 1.1.0 新增的 +# joint_interface_validator.hpp 头文件及对应库符号 +# (ValidateJointCommandInterfaces / ValidateJointStateInterfaces), +# 导致 hardware_interface.cpp 编译期 fatal error。先从源码编译安装 +# kuka_drivers_core 1.1.0 到临时前缀,再让 find_package 优先命中 1.1.0。 +cd kuka_drivers_core mkdir -p .obj && cd .obj %cmake3 \ - -DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \ + -DCMAKE_INSTALL_PREFIX="/tmp/kdc_install" \ -DAMENT_PREFIX_PATH="/opt/ros/%{ros_distro}" \ -DCMAKE_PREFIX_PATH="/opt/ros/%{ros_distro}" \ -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \ @@ -78,6 +85,22 @@ mkdir -p .obj && cd .obj -DBUILD_TESTING=OFF -DTESTING=OFF -DCMAKE_SUPPRESS_REGENERATION=ON \ .. make %{?_smp_mflags} +make install +cd ../.. + +export AMENT_PREFIX_PATH="/tmp/kdc_install:/opt/ros/%{ros_distro}" +export LD_LIBRARY_PATH="/tmp/kdc_install/lib:/opt/ros/%{ros_distro}/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" +cd kuka_iiqka_eac_driver +mkdir -p .obj && cd .obj +%cmake3 \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/%{ros_distro}" \ + -DAMENT_PREFIX_PATH="/tmp/kdc_install;/opt/ros/%{ros_distro}" \ + -DCMAKE_PREFIX_PATH="/tmp/kdc_install;/opt/ros/%{ros_distro}" \ + -UINCLUDE_INSTALL_DIR -ULIB_INSTALL_DIR -USYSCONF_INSTALL_DIR -USHARE_INSTALL_PREFIX -ULIB_SUFFIX \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ + -DBUILD_TESTING=OFF -DTESTING=OFF -DCMAKE_SUPPRESS_REGENERATION=ON \ + .. +make %{?_smp_mflags} %install [ -f /opt/ros/%{ros_distro}/setup.sh ] && source /opt/ros/%{ros_distro}/setup.sh || true @@ -91,6 +114,16 @@ make install DESTDIR=%{buildroot} /opt/ros/%{ros_distro} %changelog +* Wed Sep 23 2026 ai-importer <ai-importer@openeuler.org> - 1.1.0-4 +- %build 先从源码编译安装 kuka_drivers_core 1.1.0 到临时前缀 + /tmp/kdc_install:eulermaker 源中 ros-humble-kuka-drivers-core 仅 + 1.0.0,缺 1.1.0 新增的 joint_interface_validator.hpp 头文件及对应库 + 符号 (ValidateJointCommandInterfaces / ValidateJointStateInterfaces), + 导致 hardware_interface.cpp 编译期 fatal error。源码 tarball 含完整 + kuka_drivers.git 单体仓库,kuka_drivers_core 子目录即为 1.1.0 源码。 + 编译安装到临时前缀后,通过 CMAKE_PREFIX_PATH / AMENT_PREFIX_PATH + 让 find_package(kuka_drivers_core) 优先命中 1.1.0 版本。 + * Wed Sep 23 2026 ai-importer <ai-importer@openeuler.org> - 1.1.0-3 - 增加 grpc-devel BuildRequires:源码 hardware_interface.cpp / robot_manager_node.cpp 直接 #include <grpcpp/create_channel.h>,编译期找不到该头文件(对齐兄弟包 |
