第一步 下载 QT 并安装

1 1 官网( http://download.qt.io/archive/qt/5.13/5.13.0/)下载 qt 安装包
qt-opensource-linux-x64-5.13.0.run

1 2 给安装 run 文件增加执行权限并运行,安装选项全选,路径默认

sudo chmod +x qt-opensource-linux-x64-5.13.0.run 2. ./qt-opensource-linux-x64-5.13.0.run

1.3 修改 bashrc 文件,配置 qtcreator 的快捷访问名为 qt ,在文件末尾添加

alias qt=/opt/Qt5.13.0/Tools/Qtcreator/bin/qtcreator
第二步 安装 ROS 的 QT 相关功能包
sudo apt-get update 5. sudo apt-get install ros-kinetic-qt-create ros-kinetic-qt-build
第三步 测试 QT 功能包

3.1 新建工作空间,并新建一个 qt 功能包

mkdir -p qt_ws/src 7. cd qt_ws/src 8. catkin_create_qt_pkg [packname] 9. cd .. & catkin_make

3.2 运行节点

source devel/setup.bash 11. rosrun [packname] xxx

出现以下软件弹窗证明 Q T 功能包测试成功
在这里插入图片描述

第四步 配置 qtcreator 并运行

4 1 在终端中输入 qt 打开 qtcreator 5.13.0
在这里插入图片描述
4 2 左上角选择文件 打开项目,选择 qt_ws/src 目录下的 CmakeList.txt
在这里插入图片描述4 3 左侧选择 Desktop QT5.13.0 GCC 64 bit ,点击加号,选择 Build

在这里插入图片描述
在这里插入图片描述
4 4 配置 C MAKE 参数,将 CMAKE_PREFIX_PATH 的 value 改为 opt/ros/kinetic ,回车
后点击下方的 Apply Configuration Changes
在这里插入图片描述
4 5 配置 QT 参数,共修改一处地方,增加四处地方(增加方法,右方 Add-directory)
在这里插入图片描述
在这里插入图片描述
4 6 点击下方 Apply Configuration Changes 左下角小锄头编译,绿色三角形运行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

…详情请参考古月居文章

|- robotGUI
|- include
|- robotGUI
|- main_window.hpp
|- qnode.hpp
|- resources
|- src
|- drawpicture.h
|- main_window.hpp
|- qnode.hpp
|- btn_control.cpp
|- button.cpp
|- drawpicture.cpp
|- main.cpp
|- main_window.cpp
|- pose_button.cpp
|- qnode.cpp
|- relay_button.cpp
|- ui
|- main_window.ui
|- CMakeLists.txt
|- CmakeLists.txt.user
|- mainpage.dox
|- package.xml <!—robotGUI功能包的简洁描述–>
|- CMakeLists.txt
|- CMakeLists.txt.user

需要特别注意的是,我们使用的cv_bridge 需要 OpenCV3.4.1 作为依赖, ubuntu 16.04 自带 OpenCV2.4.9 ,安装的 ROS kinectic 版本自带 Open CV3.3.1 ;但这些版本均不适用,虽然可以在修改 CMakeLists 后编译成功,但程序将无法正常运行。所以我们需要安装Opencv并使用set添加动态链接库。

```xml
set(OpenCV_DIR /home/xxx/opencv-3.4.1/build)
第六步 软件编译以及发布

修改 qt creator 中该项目的 release 模式配置,与 4.4 中配置 Default 类
似,将 C MAKE_PREFIX_PATH 的 value 改为 opt/ros/kinetic
在这里插入图片描述
在这里插入图片描述

6 2 修改完成后点击下方的 A pply Configuration Changes ,并点击左下角的小锄头
重新编译该项目。注意,此时小锄头上方的电视应提示处于 Release 模式。

6.3 在此路径下打开终端,检查该执行文件的动态链接库是否全部找到

ldd neobotGUI

出现这样的情况则表示全部找到
在这里插入图片描述
6.3 打包导出软件,下载 linuxdeployqt ,得到一个 appimage 文件

6.4 下载 patchelf

解压后进入该文件夹,并在终端中执行

./configure 
make 
sudo make install

将 linuxdeployqt-continuous-x86_64.AppImage 与可执行文件 robot GUI 放在
一个新的文件夹(如 robotGUI_release)中,并执行

./linuxdeployqt-continuous-x86_64.AppImage robotGUI -appimage

在这里插入图片描述

等待程序执行完毕,此时文件夹内将增加了几个文件夹,里面包含了必需的动态链接库,
此时将整个文件夹压缩,即可在任意电脑中解压并通过以下命令运行.

Logo

更多推荐