Clion ROS开发环境设置技巧

作者:FlyingGod 时间:2023-11-01 02:36:32 

在源环境中启动CLion

需要告知CLion ROS特定的环境变量。通过运行来源工作空间时,将在当前shell中检索这些变量


source ./devel/setup.bash

为CLion提供ROS环境变量的最简单方法是从同一个shell启动IDE。在获取工作空间后,您可以键入同一终端:

在CLion中打开一个ROS项目

在源环境中启动CLion后,执行以下操作之一以打开ROS项目:

  • 单击文件|打开并选择ROS工作区的src目录中的CMakeLists.txt,然后选择Open as Project。

  • 单击文件|来自Sources的新CMake项目,并选择工作区的src目录以从中导入项目。

该CMake的工具窗口会显示该项目加载的状态:

Clion ROS开发环境设置技巧

设置catkin工作空间的构建路径

默认情况下,CLion将构建输出放在自动创建的cmake-build-debug或cmake-build-release目录中。对于ROS开发,这意味着您将在CLion和运行的控制台中拥有两个不同的版本catkin_make。

要在IDE和控制台上进行单一构建,需要将CLion构建路径设置为catkin工作区目录。为此,请转到文件|设置Ctrl+Alt+S|构建,执行,部署|CMake并更改两个字段:

  • 在生成路径中,设置workspace_folder/build。

  • 在CMake选项中,添加-DCATKIN_DEVEL_PREFIX:PATH=workspace_folder/devel。

Clion ROS开发环境设置技巧

使用启动文件

您可以在CLion中将ROS节点作为常规应用程序运行和调试。

启动文件无法直接执行,但您可以使用XML语法突出显示和完成编辑它们,并将调试器附加到正在运行的节点。

将调试器附加到正在运行的节点

1、从命令行运行.launch文件。例如

您可以通过该rosnode list命令检查当前运行的节点列表。在我们的示例中,列表将包含talker和listener:

Clion ROS开发环境设置技巧

2、呼叫运行|从主菜单附加到处理或按Ctrl+Alt+F5。

3、通过其PID或名称连接到所需节点:

Clion ROS开发环境设置技巧

示例:创建基本ROS节点,在CLion中编辑并运行它

在这个例子中,我们将创建一个简单的ROS包,编辑源代码,并从CLion运行节点。我们将在Ubuntu 18.04上使用ROS Melodic,并在ROS wiki上使用编写简单发布者和订阅者(C ++)教程的基本发布者节点。

创建一个基本的ROS包

创建和构建ROS工作区:


mkdir -p ros_workspace/srccd ros_workspace
catkin_make

在工作区中,创建一个名为my_package的包:


cd src
catkin_create_pkg my_package roscpp rospy std_msgs

启动CLION

来源工作区:


cd ../../../source ./devel/setup.bash

并在同一终端启动CLion


sh /opt/clion-2018.2/bin/clion.sh

在CLion中打开包作为项目

在CLion中,转到File |打开并选择位于包文件夹内的CMakeLists.txt文件,然后选择将其作为项目打开:

Clion ROS开发环境设置技巧

添加源文件并编辑CMakeLists.txt

向项目添加新的源文件:右键单击Project树中的src,选择New |C / C ++源文件并将其命名为my_package.cpp。

将整个talker.cpp文件从Publisher和Subscriber教程复制到my_package.cpp中。

新创建的源添加到的CMakeLists.txt和链接其对应程序库:


add_executable(my_package src/my_package.cpp)
target_link_libraries(my_package ${catkin_LIBRARIES})

之后,重新加载CMake项目,并注意运行/调试配置列表中的my_package:

Clion ROS开发环境设置技巧

运行ROS节点

1、在从CLion运行节点之前,在新终端中打开ROS主站:


roscore

2、在CLion,运行Clion ROS开发环境设置技巧的my_package配置。运行工具窗口将显示节点输出:

Clion ROS开发环境设置技巧

3、在单独的终端中,检查当前活动的ROS主题。如果我们打印消息chatter,输出将类似于我们在CLion中看到的内容:

Clion ROS开发环境设置技巧

现在,如果我们Clion ROS开发环境设置技巧在CLion中停止应用程序,该rostopic echo /chatter命令将没有输出。

来源:https://www.cnblogs.com/flyinggod/p/12503014.html

标签:Clion,ROS,开发环境
0
投稿

猜你喜欢

  • WEB开发之注册页面验证码倒计时代码的实现

    2024-04-22 22:32:31
  • Python 实现过滤掉列表中唯一值

    2021-09-26 23:13:55
  • 获取SqlServer存储过程定义的三种方法

    2024-01-24 06:03:38
  • Python使用lxml模块和Requests模块抓取HTML页面的教程

    2021-08-29 20:55:33
  • 如何解决cmd运行python提示不是内部命令

    2022-02-05 05:05:38
  • django-利用session机制实现唯一登录的例子

    2022-09-10 23:20:20
  • vue项目使用node连接数据库的方法(前后端分离)

    2024-01-27 14:08:54
  • python判断一个集合是否包含了另外一个集合中所有项的方法

    2022-01-15 19:08:06
  • Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页

    2009-03-04 10:56:00
  • javascript实现无法关闭的弹框

    2024-05-08 09:32:13
  • Git原理和常用操作

    2023-02-01 23:55:55
  • python argparse模块传参用法实例

    2022-01-19 09:53:42
  • 详解Python的collections模块中的deque双端队列结构

    2021-08-15 19:35:57
  • Asp中通过简单的例子理解下ByVal和ByRef的用法

    2011-02-20 10:57:00
  • 基于asyncio 异步协程框架实现收集B站直播弹幕

    2021-07-14 19:34:40
  • 在VSCode中配置PHP开发环境的实战步骤

    2023-06-06 02:13:06
  • Elasticsearch之倒排索引及索引操作

    2023-10-28 00:38:38
  • python jinjia2的项目使用

    2021-03-16 04:57:21
  • BootStrap学习笔记之nav导航栏和面包屑导航

    2023-08-16 12:33:22
  • Golang使用第三方包viper读取yaml配置信息操作

    2024-05-09 14:51:19
  • asp之家 网络编程 m.aspxhome.com