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

QT(5.15)之QGC(4.4)安装教程

一、编译

下载需求:需要QT版本为5.15,QGC版本为4.4,必须使用MSVC编译器,不能用Mingw编译器。

1. 下载QGroundControl源码
QGroundControl 的源代码https://github.com/mavlink/qgroundcontrol。

官网:Getting Started with Source and Builds | QGC Guide (master)

当前示例release版本为4.4稳定版
推荐使用git下载源码。直接下载zip 文件不包含相应的子模块源代码。
git如果下载过程中失败,需要开梯子。。。。

①首先,克隆存储源码库,包括子模块:

git clone --recursive -j8 https://github.com/mavlink/qgroundcontrol.git -b Stable_V4.4

② 然后进入源码文件夹,使用下面git命令更新子模块

.git文件夹所在的路径
git submodule update --recursive 

QGroundControl地面站 使用 Qt 作为其跨平台支持库。
每日构建指定Qt版本为6.6.3,稳定版为5.15.2。

2.下载完成使用Qt打开qgroundcontrol.pro文件进行编译,如果编译中报错:

需要修改\mavlink\qgroundcontrol\QGCCommon.pri文件。

将        QMAKE_CXXFLAGS_WARN_ON += /WX /W3 \
改完        QMAKE_CXXFLAGS_WARN_ON += -/WX /W3 \

然后在编译,此时编译会报错,然后在改成原来的QMAKE_CXXFLAGS_WARN_ON += /WX /W3 \继续进行编译即可。。。。或者不改继续编译也可以成功。。。编译成功结果见下图。


二、二次开发

QGC的主界面好像是:C:\Users\lxj\Desktop\qground_control\mavlink\qgroundcontrol\src\ui\MainRootWindow.qml

1.修改标题名称

我这里为了方便就直接复制本地环境的路径了,大家可以参考自己的路径,具体路径为以下加粗的目录。

C:\Users\lxj\Desktop\qground_control\mavlink\qgroundcontrol\src\QGCApplication.cc文件夹中。修改280行。

需要加一个宏定义:

#define qtstr(s)  QString::fromLocal8Bit(s)

2.修改图标

添加图片资源
新建一个文件夹img_add,放入需要添加的图片资源

C:\Users\lxj\Desktop\qground_control\mavlink\qgroundcontrol\qgcimages.qrc在这个文件中导入自己要添加的图标。 

然后就可以在程序中使用添加的图片了,注意程序中填写的是图片的别名
修改主工具栏图标:
修改MainToolBar.qml,在下图位置修改图片资源的路径为自己添加的资源(以软件设置按钮为例):

C:\Users\lxj\Desktop\qground_control\mavlink\qgroundcontrol\src\ui\toolbar\MainToolBar.qml

在下图位置修改图片资源的路径为自己添加的资源(以软件设置按钮为例):

icon.source:            "/qmlimages/软件图标.png"

结果如下: 

修改软件设置图标:(似乎没改变,后续再看)

C:\Users\lxj\Desktop\qground_control\mavlink\qgroundcontrol\src\ui\MainRootWindow.qml

需要修改两个地方:

showTool(qsTr("Application Settings"), "AppSettings.qml", "/qmlimages/软件图标.png") 

imageResource: "/qmlimages/软件图标.png"

注意这个文件中有多个SubMenuButton注意看id是否正确。。。 

 3.汉化

软件路径:D:\C++\Qt5.15.2\5.15.2\msvc2019_64\bin\linguist.exe

打开后,在左侧会显示总个数和已汉化的个数,点击没有全部汉化的Context,在右侧对有问号的进行汉化,在简体中文下面的输入框写入对应的汉化结果,然后点击上方的勾号,勾完后对应的问号就变成了勾号,然后点击上方的保存按钮。

相关文章:

  • springboot3整合knife4j详细版,包会!(不带swagger2玩)
  • 讯飞离线唤醒+离线Vosk识别+DeepSeek大模型+讯飞离线合成持续优化,无限可能~
  • 【Qt】可爱的窗口关闭确认弹窗实现
  • ZT9 游游的字母翻倍
  • 开源AI网络爬虫工具Crawl4AI
  • vue3学习--Vue3与2的区别
  • 分布式服务配置中心
  • STM32-智能台灯项目
  • 游戏开发 游戏开始界面
  • 美颜相机1.0
  • 神经网络八股(1)
  • Docker 镜像加速:告别龟速,畅享飞速下载!
  • discuz3.5 回复 浮动窗口无法弹出
  • JS复习练习题目、完整nodejs项目以及Commons、Es
  • UE_C++ —— Gameplay Tags
  • java八股文-消息队列
  • 特好用的文字识别库---paddleocr
  • Qt | Excel创建、打开、读写、另存和关闭
  • dockerfile基于alpine构建haproxy
  • 常见的服务CPU过高Arthas快速排查问题详细笔记
  • 地方门户网站app/合肥seo
  • 成都房产网官网/五行seo博客
  • 网络网站推广选择乐云seo/北京网站营销seo方案
  • 设计师常上的网站/免费域名 网站
  • wordpress突然打不开/关键词优化怎么优化
  • 如何做网站图片/百度搜索引擎首页