diff options
Diffstat (limited to 'nebula-robosense-hw-interfaces.spec')
| -rw-r--r-- | nebula-robosense-hw-interfaces.spec | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/nebula-robosense-hw-interfaces.spec b/nebula-robosense-hw-interfaces.spec index 9c7eb35..caca5af 100644 --- a/nebula-robosense-hw-interfaces.spec +++ b/nebula-robosense-hw-interfaces.spec @@ -45,6 +45,15 @@ BuildRequires: ros-%{ros_distro}-robosense-msgs # 系统依赖:本包 robosense_common.hpp → nebula_core_common/nebula_common.hpp # 传递包含 <boost/tokenizer.hpp>(实证于 nebula_core_common 头),编译期必需 BuildRequires: boost-devel +# nebula_core_common 的 ament 导出依赖含 nlohmann_json:该依赖不在本包 +# package.xml(上游把系统库挂在 nebula_core_common 自己的 ament_export_ +# dependencies 里),而配置期会沿 +# autoware_package → ament_auto_find_build_dependencies → +# include(nebula_core_commonConfig) → +# ament_cmake_export_dependencies-extras.cmake:21 find_package(nlohmann_json) +# 链式触发,缺失即 cmake 配置失败(实证于 COPR build 112600)。openEuler 包名 +# 按 pkg.remap 映射(nlohmann-json-dev → nlohmann-json-devel),非 Debian 名 +BuildRequires: nlohmann-json-devel # 运行时 Requires(ROS 特有,必须手写:/opt/ros 被 __requires_exclude_from 豁免, # autodeps 扫不到。少写构建照样成功,但装上的包环境不就绪,§6) @@ -57,6 +66,9 @@ Requires: ros-%{ros_distro}-nebula-robosense-common Requires: ros-%{ros_distro}-robosense-msgs # 本包公开头文件传递暴露 boost 头,下游编译本包头文件时同样需要 Requires: boost-devel +# 同理,本包导出的 nebula_core_common 依赖链在安装侧也要能被 find_package, +# 否则下游包在本包之上配置时同样报 nlohmann_json 缺失 +Requires: nlohmann-json-devel # §7 单包策略:ROS 包严禁拆实体子包(同一路径被两个子包拥有会安装冲突), # 用虚拟别名兼容依赖方 @@ -116,4 +128,6 @@ make install DESTDIR=%{buildroot} %changelog * Tue Sep 22 2026 ai-importer <ai-importer@openeuler.org> - 1.2.0-1 +- Fix: add nlohmann-json-devel BuildRequires/Requires (exported by nebula_core_common) +- Fix: 注释里裸的 cmake 宏名被 rpm 展开,残留文本串进 cmake 参数 - Initial import (ROS batch) |
