当前位置: 首页 > news >正文

ROS2 ERROR: qt.qpa.plugin: Could not find the Qt platform plugin “windows“ in

ROS2按照官网的办法安装好之后,

Installing ROS 2 on Windows — ROS 2 Documentation: Galactic documentation

测试时碰到的问题

指令,

call  C:\dev\ros2_galactic\local_setup.bat
ros2 run turtlesim turtlesim_node
或者
call  C:\dev\ros2_galactic\local_setup.bat
ros2 run turtlesim turtle_teleop_key

 报错,

qt.qpa.plugin: Could not find the Qt platform plugin "windows" in "C:\Qt\5.15.0\msvc2019_64\plugins\platforms"
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

这里说要你重装啊什么的,当然这不会有效果。

先说一下解决方案

[ROS2 galactic windows] cannot start turtlesim - no Qt platform plugin could be initialized · Issue #126 · ros/ros_tutorials · GitHub

(1)

设置

QT_QPA_PLATFORM_PLUGIN_PATH = 
C:\Qt\qt5\5.15.0\msvc2019_64\plugins\platforms

然后把文件

C:\dev\ros2_galactic\bin\platforms\qwindows.dll

拷贝到

C:\Qt\5.15.0\msvc2019_64\plugins\platforms\qwindows.dll

(2)或者,

设置

QT_QPA_PLATFORM_PLUGIN_PATH = 

C:\dev\ros2_galactic\bin\platforms\

原因分析

操作系统上存在多个qdinwos.dll,只有galactic下面那个是和ROS一起编译生成的;QT下面那个是windows下通用的链接库,但不包含一系列ROS需要的调用函数。

悲催的是ROS并没有在其正式的文档中对该差别进行说明,只是在安装时说要设置, 

set Qt5_DIR=C:\Qt\5.15.0\msvc2019_64
set QT_QPA_PLATFORM_PLUGIN_PATH=C:\Qt\5.15.0\msvc2019_64\plugins\platforms

大家按官方的路走,是导致出错的最主要原因。

晒两张图,使用的分析工具是 [dependencies.exe]

这个是QT5自带的,和ROS不兼容的,

 这个是ROSt自带的,

 本文结束

相关文章:

  • ROS2 Warning: RosPluginProvider._parse_plugin_xml() plugin file rqt_gui_cpp/plugin.xml not found
  • ROS2进阶:turtlesim与rqt
  • TCP/UDP常见的端口号
  • ROS2进阶:基于cmake创建自己的开发包
  • ROS2进阶:如何查找特定的包(package)并列出包中所有节点(node)
  • ROS2进阶:VS2019调试ROS2-examples程序
  • Python Error: 系统找不到指定的文件。: ‘c:\\python38\\Scripts\\pep8.exe‘ -> ‘c:\\python38\\Scripts\\pep8.exe.del
  • Ubuntu中如何处理难缠的软件包升级
  • 3D进阶之OSG:从VS2019编译osgEarth开始
  • vcpkg如何全面卸载和重新安装包
  • 3D进阶之OSG: VS2019编译OpenSceneGraph
  • 3D进阶之OSG: 编译osgQt(附:Qt的下载与安装)
  • 3D进阶之OSG:如何让vs2019识别不带“.h”的osg头文件
  • Qt-creator warning: Missing Qt Debug Information
  • 3D进阶之OSG:快捷键
  • 【EOS】Cleos基础
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • gops —— Go 程序诊断分析工具
  • JAVA SE 6 GC调优笔记
  • Java新版本的开发已正式进入轨道,版本号18.3
  • Kibana配置logstash,报表一体化
  • mysql 5.6 原生Online DDL解析
  • React 快速上手 - 07 前端路由 react-router
  • SpingCloudBus整合RabbitMQ
  • ucore操作系统实验笔记 - 重新理解中断
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • 闭包--闭包作用之保存(一)
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 技术发展面试
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 前端学习笔记之观察者模式
  • 浅谈Golang中select的用法
  • 时间复杂度与空间复杂度分析
  • 一天一个设计模式之JS实现——适配器模式
  • 主流的CSS水平和垂直居中技术大全
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • 《天龙八部3D》Unity技术方案揭秘
  • Mac 上flink的安装与启动
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 数据可视化之下发图实践
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • # Java NIO(一)FileChannel
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #FPGA(基础知识)
  • #mysql 8.0 踩坑日记
  • $jQuery 重写Alert样式方法
  • (3)(3.5) 遥测无线电区域条例
  • (4)(4.6) Triducer
  • (java)关于Thread的挂起和恢复
  • (Java实习生)每日10道面试题打卡——JavaWeb篇
  • (官网安装) 基于CentOS 7安装MangoDB和MangoDB Shell
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (十五)使用Nexus创建Maven私服