ROS 服务未正确构建

ROS services are not building properly

我正在尝试构建我的自定义 ROS 服务。它们在另一个父包中 结构如下:

|--catkine_ws
| |--src
| | |--Parent
| | | |--CMakeLists.txt 
| | | |--package.xml
| | | |--ChildA
| | | | |--CMakeLists.txt 
| | | | |--package.xml
| | | | |--srv
| | | | | |--SomeService.srv
| | | |--ChildB

包构建正确,我可以在其他节点和包中使用它们。 但是,当我尝试使用 rossrv list 时,自定义服务不会出现。我认为这会在我尝试构建我的 Simulink 控制器时导致一些问题,但它找不到服务消息定义。

有人知道发生了什么事吗?

我能够解决问题,虽然不是很明显,但解决方案相当简单。我不得不通过使父包成为元包来稍微更改包的结构,然后进行一些处理以确保子包仍然可以访问 cmakes 以找到我的外部包。