qtcreator版本_【IDE】ROS开发环境之Qt Creator的安装与配置

可以用于ROS开发的IDE很多(可以参考【工具合辑】ROS工程师都在用什么IDE开发呢?用哪种IDE开发更加高效呢? ),ROS的调试依赖环境变量,与外部程序有通讯,因此要求启动IDE的时候加载ROS环境参数,其他方面并无太多限制。

今天我们讲讲Qt Creator的安装与配置。Qt Creator是一个轻量级、配置起来也更方便简洁的ROS开发工具。

QtCreator的ROS插件虽然是一款插件,但是在其官网已经打包了一个QtCreator,也就是说插件和安装包是做在一起的,当你通过这个安装包安装成功后,QtCreator和ROS的插件将都安装成功。下载地址是:

https://ros-qtc-plugin.readthedocs.io/en/latest/_source/How-to-Install-Users.html#qt-installer-procedure

目前支持 14.04、16.04和18.04,目前不支持Ubuntu 20.04。这里我们下载Ubuntu 18.04的离线软件包:

49cff89783350afd01136abfc08a158b.png

现在我们安装这个软件包:

  1. 打开一个终端,可以使用Alt+Ctrl+T,使用cd命令路径到存放软件的地方;

  2. 执行chmod +x  qtcreator-ros-bionic-latest-offline-installer.run 修改权限。也可以用鼠标右击此文件,选择Properties,将‘权限’中的‘执行’打勾;

    d1c4a6035af53e7c7842dce439a3ec52.png

  3. 执行 ./qtcreator-ros-bionic-latest-offline-installer.run开始安装(或者双击运行);

    e95363c2b58faa5551aa76537849fb8e.png 

  4. 选择安装路径,勾选 Qt Creator,然后点击继续;

    3e6b363844f803517374b4782f66a4b3.png

    4158e520d0e2bf42d1c7f09940241307.png

  5. 安装成功后,可以点击桌面左上角,搜索Qt就可以找到图标,双击运行即可打开软件;

d70d64ba44cfe330227bdabbbbefcc93.png

我们可以点击 File 》 new File or Project,点击Other Project,我们可以在左边看到 ROS Workspace,这里我们可以导入创建好的ROS工作空间;

672eb6345e07bcd251675b479c216c09.png

我们需要提前创建好ROS的工作空间(QtCreator无法创建工作空间,只可以导入),这里我创建的是catkin_ws,选择catkin_ws,然后写上一个自己喜欢的名字,这里我写的是test。将Build System选择为CatkinMake(如果采用beta版的Catkin_tool才选为Catkintool编译);

a1f94c6d52036c53913efd0106540666.png

点击继续完成工作空间的导入;

02e4e51e0a9084063a572bf697cba542.png

导入ROS工作空间成功的界面如下,于是可以通过qt creator方便的进行ROS开发啦 。如果在安装该插件的过程中有任何疑问,欢迎反馈交流!

02da839cc23c86efcf841299ec62ecc0.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349446.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基本API速率限制

您可能正在开发某种形式的(Web / RESTful)API,并且如果它是面向公众的(甚至是内部的),通常您希望以某种方式对其进行速率限制。 即,限制一段时间内执行的请求数,以节省资源并防止滥用…

无人值守安装之cdrom_无人值守安装

第一阶段项目内容:内容配置PXEDHCPvsftp,实现客户端网络安装linux操作系统阶段目的:目的是让你体验如何通过网络引导,安装redhat系统,解决了很多时候没有光驱,却需要装系统的需求。步骤:服务器端…

python函数定义中参数列表里的参数是_python函数参数中的/和*是什么意思?

在python3.8之后函数参数中允许出现/和*号,/用来指明某些函数形参必须使用位置参数而非关键字参数的形式,*出现在函数参数中第一种含义可以表示为可变参数,一般写作*args;对于单独出现在参数中的*参数,则表示&#xff…

python属性和方法的区别_Python中几种属性访问的区别

起步 python的提供一系列和属性访问有关的特殊方法:__get__, __getattr__, __getattribute__, __getitem__ 。本文阐述它们的区别和用法。 属性的访问机制 一般情况下,属性访问的默认行为是从对象的字典中获取,并当获取不到时会沿着一定的查找…

rootfs 制作ubuntu_为n1制作aarcm64/arm64 ubuntu rootfs系统

安装debootstrap和qemu-user-static:apt install apt-transport-https qemu qemu-user-static binfmt-support debootstrap构建ubuntu 18.04系统,基础包为minbase,使用清大的源:qemu-debootstrap --arch arm64 --variantminbase -…

java线程死锁_Java并发:隐藏线程死锁

java线程死锁大多数Java程序员熟悉Java线程死锁概念。 它本质上涉及2个线程,它们彼此永远等待。 这种情况通常是平面(同步)或ReentrantLock(读或写)锁排序问题的结果。 Found one Java-level deadlock:"pool-1-t…

空间滤波_第三章 灰度变换与空间滤波-(六)锐化空间滤波器之非锐化掩蔽

知识使人自由,印刷术使知识自由。按照书中的顺序,我们插入一章非微分模式下的锐化的方法,非锐化掩蔽。这种方法在印刷术和出版界已经用了好多年了,具体的过程:模糊原图像从原图像中减去模糊图像(产生的差值…

python gui编程 从入门到项目实战_python GUI编程 QT5开发项目实战

目录:├─01-PyQT简介及优势├─02-PyQT5开发环境搭建├─03-PyQT5应该学什么├─04-PyQT5库结构├─05-PyQT5程序基本结构分析├─06-PyQT5-Pycharm活动模板设置├─07-PyQT5程序基本结构-面向对象版本├─08-PyQT5-控件初体验及学习思路├─09-PyQT5-Object-对象的…

五分钟的JShell

这篇文章建立在我的My Java 9顶级功能文章的基础上,通过对这些功能的深入研究。 在这里,我们向您展示如何在五分钟内学习jshell并改善Java 9开发经验。 入门 假设您已经下载并安装了Java 9,则可以通过键入以下内容启动Shell: js…

gsoap初始化释放_通过gsoap使用webservice

一. 按照原来预研究的结果,使用gsoap的方法如下:soapcpp2.exe -C weather.h -I E:\temp\gsoap-2.8\gsoap\import(E:\temp\gsoap-2.8\gsoap\import是我本地的路径),这样可以生成C文件(soapClient.cpp, soapH.h, soapStub.h, WeatherWebServiceSoap.nsmap)…

go语言io reader_【已解决】go语言中如何使用io的MultiWriter

【背景】折腾:期间,需要去搞懂:如果新建和设置MultiWriter。【折腾过程】1.参考:去看看:2.然后去试试代码:var filenameOnly stringfilenameOnly GetCurFilename()fmt.Println("filenameOnly", …

python声明编码为gbk_Python字符串编码坑彻底详细解决

来源:实习僧 作者:实习僧的何梁 真正完全搞清楚Python的编码问题 我想大家经常被Python的编码问题搞的晕头转向,下面我一头来自实习僧的牛,为您详细解析这个天坑: 请看图: 1、python中一切皆对象,字符对象分…

golang 包含文本_Golang教程之Web篇(七)

首先,大家一起思考一个问题:何为Web编程?严格来说,这只是一个叫法,并没有学术上的定义,但是一般大家都说到web都是指浏览器相关,所以大家一般说的web开发要么是PC Web要么就是手机Web&#xff0…

junit 测试 异常_使用JUnit规则测试预期的异常

junit 测试 异常这篇文章展示了如何使用JUnit测试预期的异常。 让我们从我们要测试的以下类开始: public class Person {private final String name;private final int age;/*** Creates a person with the specified name and age.** param name the name* param …

delphi switch语句例子_Java 14 祭出增强版 switch,真香!!

Java14:栈长,我还有机会吗?栈长:必须有!今天说下switch!关注Java技术栈的朋友应该都知道,switch 在 JDK 12 中进行增强了,并且在 JDK 12/13 中一直是预览特性,刚出来的时…

呼叫我,或异步REST

本文是使用Spring Boot Java 8进行的异步REST应用程序工作的非常简单的示例。SpringBoot使Web应用程序的开发几乎非常容易,但是为了简化任务,我从Spring存储库中举了一个例子,称为rest- service ,将其分叉到我自己的存储库中 &am…

python中break可以用在for和if中吗_Python的for和break循环结构中使用else语句的技巧...

在Python中的while或者for循环之后还可以有else子句,作用是for循环中if条件一直不满足,则最后就执行else语句。 1 2 3 4 5 6 7 8 9 10 11 for iin range(5): if i 1: print in for else: print in else print after for-loop # in for # in else # after…

ldconfig mysql_ldconfig命令介绍

ldconfig是一个动态链接库管理命令,其目的为了让动态链接库为系统所共享。**ldconfig的主要用途:默认搜寻/lilb和/usr/lib,以及配置文件/etc/ld.so.conf内所列的目录下的库文件。搜索出可共享的动态链接库,库文件的格式为&#xf…

sqoop 导入到hive字段全是null_Sqoop 一点通

sqoop 是什么?sqoop 主要用于异构数据:1. 将数据从hadoop,hive 导入、导出到关系型数据库mysql 等;2. 将关系型数据库 mysql 中数据导入、导出到 hadoop 、hve 。sqoop 版本说明sqoop 1 版本主要从1.4.0 到 1.4.7;sqoop 2 版本主要…

php使用pdo操作mysql数据库实例_php使用PDO操作MySQL数据库实例_PHP

本文实例讲述了php使用PDO操作MySQL数据库的方法。分享给大家供大家参考。具体分析如下:PDO是mysql数据库操作的一个公用类,我们不需要进行自定类就可以直接使用pdo来操作数据库,但是在php默认配置中pdo是未开启所以我们必须先在php.ini中开启它才可以使用,这里来详…