qt_ros环境搭建
Qt中安装ROS插件qt57creator-plugin-ros
问题1:为什么安装了两个版本的Qt Creator?
我下载了Qt5.9.3的离线安装包,很自然的安装在了home目录下,这是第一个Qt Creator,
如果默认安装在/opt 下面有两个文件夹 /opt/qt59 /opt/Qt5.9.9 |
我理想中的安装结果:在home目录下安装了一个Qt5.9.3,在线安装ROS插件,该插件与home下的Qt结合的很完美,没有其他多余文件。
但是事实不是这样的。
下载qt57creator-plugin-ros的操作为:
sudo add-apt-repository ppa:levi-armstrong/qt-libraries-trusty
sudo add-apt-repository ppa:levi-armstrong/ppa
sudo apt-get update && sudo apt-get install qt57creator-plugin-ros
==但是下载该插件时竟然还要默认自带另一个Qt59creator!这是第二个Qt Creator,英文版,该捆绑下载的QtCreator比离线安装的Qrcreator小很多,不知道缺少哪些组件,默认会安装到/opt/qtXX目录下,这个无法更改。==于是就有了两个版本的Qt creator !网上教程也是这样操作的,但并没强调实际上安装了两个版本的QtCreator,只是说在启动qt时选择新版Qt creator,即第一个Qt creator。
==按照教程修改了qt的启动选择文件后,我并没有看到太明显的效果,最终的结果是这样的:如果运行home下的Qt creator,==那么ROS插件是不会一同运行的,而这个版本的Qt creator是我最终想使用的版本。如果运行/opt/Qt那个系统目录下的捆绑自带的Qt creator,ROS插件是可以使用的,原因很显然,插件的相关文件都安装在了这个版本的Qt目录下,而且依赖关系也都由这个版本的Qt来满足,但这个捆绑的英文版本不是我想用的版本。
问题2:如何将捆绑的英文版Qt Creator改为中文版?
上述操作中,由于第一个Qt无法用ROS插件,我最终选择用捆绑的那个Qt creator,我想让它成为中文版,但选项里的语言只能选“English”!于是我将前一个中文版Qt的中文汉化相关文件全部复制了过来,汉化相关文件在/home/username/Qt5.9.3/Tools/QtCreator/share/qtcreator/translations下,所有带CN的文件就是,复制到/opt/qt59/share/qtcreator/translations下,启动Qt就能发现软件语言可以改为中文了。 |
改完之后,两个版本的Qt都是中文版了,现在第一个Qt反倒显得多余了,但它的组件是我选择过得,有啥没啥心里至少有个底,而这个捆绑的Qt虽然能用ROS插件,初步调试程序包也都没啥问题,但就是不知道缺啥,有种不放心的感觉
解决QtCreator无法输入中文的问题
1、安装相关依赖库
需要先安装fcitx-libs-qt和fcitx-libs-qt5这两个库。命令如下:
sudo apt-get install fcitx-libs-qt fcitx-libs-qt5
2、关闭QtCreator
3、从系统依赖库目录拷贝相关动态库
首先明确自己的QT安装路径,我的安装路径为:/opt/Qt5.5.1
3.1拷贝动态库到QT安装目录
将文件libfcitxplatforminputcontextplugin.so拷贝到对应的platforminputcontexts目录下。
3.1.1QtCreator5.6以前的版本
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Qt5.5.1/Tools/QtCreator/bin/plugins/platforminputcontexts
3.1.2QTCreator5.6以后的版本
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Qt5.12.0/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/
3.2解决程序无法输入中文问题
同样的,需要将文件libfcitxplatforminputcontextplugin.so拷贝到对应的platforminputcontexts目录下。
sudo cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /opt/Qt5.5.1/5.5/gcc_64/plugins/platforminputcontexts
4、启动QtCreator
/opt/Qt5.5.1/Tools/QtCreator/bin/qtcreator.sh &
我自己放在 /opt/qt59/plugins/platforminputcontexts/ 目录下面
加载说明文档
![](https://gitee.com/black-cat-loves-fawn/blogimage/raw/master/blogimage/20210526161728.png)
将所有的.qch文件导入就可以了,光标放在函数上按f1就会有文档提示
未解决
起始差别就是多了一个ros的插件
==只是依赖别的版本qt跟ros这个插件依赖的插件版本不一样导致加载不成功