x86架构与ARM架构(AGX、TX2、NX等)下配置带ROS插件的QtCreator(Qt+ROS+ubuntu18)(源码编译安装方式)

之前的一篇文章里面提到了Qt+ROS+ubuntu18环境的搭建,但是那种方法不适用于arm架构的电脑,原因是x86架构和arm架构的cpu指令集不一样,导致下载下来的可执行文件只能在x86架构运行,近日本人又有在AGX上配置Qt+ROS的需求,经查,需自己下载源码编译,经过一番尝试,将过程记录一下。

已有环境说明: ubuntu18、ROS-melodic、qt5.9(一般来说ubuntu18装ros时会自动给安装qt5,如未安装,需提前安装;若已有QtCreator,建议卸载现有QtCreator)

待配置环境说明: QtCreator+ros_plugin

其他说明: 在线 编译过程会从github下载QtCreator源码,需要梯子,否则会报连接超时的错误。为防止中途报错,采用离线方式编译源码。可以科学上网的同学也可参考本文进行在线编译。具体步骤如下:

1、 下载ros_qtc_plugin源码,如图所示,有若干个版本可以选择,在这里插入图片描述
我选择的是4.5版本,4.5指的是QtCreator4.5。下载后解压。

2、 下载qt-creator源码,最好是与上面ros_qtc_plugin版本一致

3、 安装依赖libqtermwidget5-0-dev:在终端运行命令:sudo apt-get install libqtermwidget5-0-dev

4、 修改ros_qtc_plugin-4.5文件夹下setup.sh,

4.1 把所有的libqtermwidget57-0-dev修改成libqtermwidget5-0-dev

4.2 把QMAKE_PATH一行改成自己的路径,我的路径是QMAKE_PATH=“/usr/lib/qt5/bin/qmake”

4.3 把QTR_BRANCH和QTC_BRANCH分别改成自己的ros_qtc_plugin版本和qt-creator版本,我的是"4.5"

4.4 找到fuction setParameters定义部分,export QTC_SOURCE=$BASE_PATH/qt-creator-${QTC_BRANCH}这行定义了QtCreator源码的路径,核对qt-creator-${QTC_BRANCH}是否是你下载的源码的文件夹的名字,其中${QTC_BRANCH}为步骤3.3中设置的版本号。若正确则无需修改,若错误则更正为正确的名字

4.5 找到function buildQtCreator定义部分,将里面的cloneQtCreator和pullQtCreator注释掉,这两行是下载和修复QtCreator源码的命令,由于我们已经下载好,所以无需执行

4.6 找到function build定义部分,将make clean &>> "$LOG_FILE"这行注释掉,这行是进行编译结果的清理,注释掉是为了防止编译出错时再次编译需要从头开始

5、 修改ros_qtc_plugin-4.5文件夹下ros_qtc_plugin.pri文件,将QTCREATOR_SOURCES那行添加上你的QtCreator源码的路径

6、 修改ros_qtc_plugin-4.5/src/project_manager/project_manager.pro,将第二行的include路径补充为你自己的路径

7、 修改ros_qtc_plugin-4.5/src/project_manager/ros_project.h,在头文件中添加#include<cmath>

8、 若是x86架构,则忽略此步骤若是arm架构,则替换qt-creator-4.5/src/libs/3rdparty/botan/botan.h和qt-creator-4.5/src/libs/3rdparty/botan/botan.cpp,替换的文件为该网站下载的头文件和cpp文件(下载时选right content,下载后改名为botan.h和botan.cpp后再替换)

9、 在ros_qtc_plugin-4.5目录下打开终端,运行命令./setup.sh -d进行编译,-d代表以开发者方式编译,整个编译过程持续40~60分钟

10、 若报错终端,则进入setup.sh同目录下的setup.log文件查看具体报错信息,更改后继续运行./setup.sh -d

编译成功后,在终端运行命令qtcreator-4.5-ros即可打开带有ros插件的qtcreator,这是因为编译时在/usr/local/bin/文件夹下创建了一个名叫qtcreator-4.5-ros的软链接指向qt-creator-4.5-build/bin/qtcreator,真正的可执行文件是qt-creator-4.5-build/bin/qtcreator

猜你喜欢

转载自blog.csdn.net/qq_38222947/article/details/122056314