如何从工作区外部构建基于ROS2的应用程序

问题描述 投票:0回答:2

我创建了一个可以通过cmake构建的qt应用程序。我的应用程序使用一些ros2服务,所以我需要用ros构建它。为此,我需要将我的代码放在ros2_ws / src /下。我想避免这件事。我希望通过应用程序从任何文件夹构建(不使用ros2_wc)和ament工具。我该怎么做 ?

cmake ros ros2
2个回答
0
投票

如果你想这样做,你需要像往常一样构建ROS2,并获取以下脚本:

. install/local_setup.bash

然后,您可以使用所需目录中的ament调用构建命令。

cd <dir>
ament build --force-cmake-configure ...

0
投票

For those who are using the new ros2 build tool: colcon

您可以保留自己的〜/ ros2_ws,并将QT应用程序放到另一个~/ros2_overlay_ws

例如,如果您的新QT应用程序依赖于原始~/ros2_ws中的某些服务或消息,您可以转到~/ros2_ws并运行colcon build。编译完成后,请记住通过以下命令导入并重新索引包:source ~/ros2_ws/install/setup.bash。这将在当前终端重新索引您的ros2包。

现在去~/ros2_overlay_ws/并将你的QT应用程序放到~/ros2_overlay_ws/src然后运行colcon build。 colcon将找到您的索引包并将它们添加到您的依赖项中。

© www.soinside.com 2019 - 2024. All rights reserved.