【无标题】

一级标题1、QGC二次开发方法、手段(包括基本介绍)

一级标题2、QGC编译过程步骤以及中遇到的问题和相应的解决办法

1、QGC二次开发方法、手段(包括基本介绍QGC和QT)
QGC二次开发工具:Qt5.15.2、git、NSIS、windowSDK、vs2019社区版、准备好qgc源码(从github上下载)
二次开发主要过程:QGC源码编译→根据要求进行代码修改→再次编译,对比效果→根据效果进行修改→直至最终版本
1.1 QGC简介
QGroundControl为任何启用MAVLink的无人机提供完整的飞行控制和任务规划。它的主要目标是为专业用户和开发人员提供易用性。所有代码都是开源源代码,因此您可以根据需要贡献和发展它。QGC 旨在提供可跨多个操作系统平台以及多种设备尺寸和样式运行的单个代码库。QGC用户界面是使用Qt QML实现的。QML提供硬件加速,这是平板电脑或手机等低功耗设备的关键功能。QML还提供了一些功能,使我们能够更轻松地创建单个用户界面,该界面可以适应不同的屏幕尺寸和分辨率。QGC UI 更面向平板电脑+触摸风格的 UI,而不是基于桌面鼠标的 UI。这使得单个 UI 更容易创建,因为平板电脑样式的 UI 在台式机/笔记本电脑上也往往工作正常。
QGroundControl版本支持macOS,Linux,Windows,iOS和Android。QGroundControl使用Qt作为其跨平台支持库,并使用QtCreator作为其默认构建环境。
QGC 对与其版本关联的版本号使用语义版本控制。 语义版本控制是一个 3 分量的数字,格式为 ,其中:vX.Y.Z,X是主要版本、Y是次要版本、Z是修补程序版本。

1.2 Qt 版本:5.15.2(仅限)
不要使用任何其他版本的Qt!QGC已经用指定的Qt版本(5.15.2)进行了全面测试。 存在其他Qt版本注入影响稳定性和安全性的错误(即使QGC编译)的风险很大。(建议安装完使用过程中不要进行后续的版本更新)
QT的下载安装比较缓慢,纯粹使用国内的网络虽然下载慢一点(大约24个小时)但下载过程不会出错,使用VPN虽然你下载速度快了一点,但时不时的会出现地址报错,需要守在电脑前面不停的点击重试。
QGC源码的下载,两种方式:
①直接去github下载压缩包,但有些组件模块下载不完全,需要自己去指定的文件下补全源码,否则会导致QGC源码不完整,影响后续的开发(需要下载对应路径下的src/GPS/GpsDrivers 和 libs/mavlink/include/mavlink,然后移入源码对应路径即可)
②使用git下载,需提前配置git环境,直接去git官网下载即可,具体命令:
git clone https://github.com/mavlink/qgroundcontrol.git -b Stable_V4.2 //从github上克隆源码
cd qgroundcontrol //进入到qgroundcontrol文件夹目录下
git submodule init //对子模块进行初始化
git submodule update //对子模块进行更新
Qt是一个跨平台的C++图形用户界面库,目前包括QtCreator、QtDesigner等开发工具。Qt支持所有Linux/Unix系统,还支持吃windows平台。Qt易扩展,允许组件编程。Qt与GTK、MFC、OWL、ATL是一样的图形界面库。优势:优良的跨平台性、面向对象、丰富的API(Qt包括250个以上的C++类,还提供基于模板的collections、file、serializationI/O、device等。支持2D/3D图形渲染,支持OpenGL,XML支持大量的文档开发。
QT:QT支持跨平台构建、非常好的可移植性、开源软件,使用QT开源软件库相关市场软件产品如下:Emergent(神经网络模拟器)、eav(linux版QQ聊天软件)、Google地址(三维虚拟地图软件)、VLC多媒体播放器(体积小、功能强大的开源媒体播放器)、极品飞车(EA出品赛车类游戏)、WPS office(金山软件公司推出的办公软件)等等。
2、QGC编译中遇到的问题
2.1编译工具的搭建
首先下载vs2019社区版,官网可以下载,组件按默认即可,也可在下图Microsoft Store里面安装
【无标题】_第1张图片VS组件按默认即可,也可自己修改,后期缺少可以修改,vs提供了组件加装工具,可根据自己使用情况进行配置
【无标题】_第2张图片

其次下载安装QT,QT版本5.15.2。在安装过程中,顺序图如下,组件按图所示,不然安装异常慢
没有帐户要注册账户,现在是在线安装
没什么好选择,同意就行了,开源使用
主要是同不同意发送使用信息供软件公司使用,随便选
【无标题】_第3张图片
安装目录,最后大概使用4G空间左右,下面默认
【无标题】_第4张图片
主要是以下几个组件
然后等着安装即可
【无标题】_第5张图片
【无标题】_第6张图片

安装完要设置环境变量,右键此电脑,选择属性

右上角,高级系统设置

【无标题】_第7张图片

环境变量

双击path

【无标题】_第8张图片

主要是vs2019、qt变量设置一下,新增,添加位置,如下图所示,D:\VSCODE\VC\Tools\MSVC\14.29.30133\bin这是对应的vs20019的环境变量位置【无标题】_第9张图片

git、NSIS、windowSDK直接官网安装就行,后两个其实类似于软件程序打包的组件功能库一样的程序
nsis. NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作 程序 。. 它提供了 安装 、 卸载 、 系统设置 、文件 解压缩 等功能。. 这如其名字所指出的那样,NSIS 是通过它的 脚本语言 来描述安装程序的行为和逻辑的。.
SDK即Software Develope Kit(软件开发工具包),它包含了进行Windows软件开发的文档和API函数的输入库、头文件(因为API在动态链接库中,这些动态链接库是系统的组成部分,因此不用再提供,而输入库和头文件则必须,这样才能在你的程序中使用API函数)。

QGC源码编译qt上手过程
打开qt,点击欢迎,打开项目
【无标题】_第10张图片

找到自己下载的qgc源码的位置,选择pro文件
【无标题】_第11张图片

选中之后可以看到,自己的项目下已经有了对应的文件
【无标题】_第12张图片

选择项目,进行构建目录以及编译器的设置,点击管理构建套件
【无标题】_第13张图片

按如图配置
【无标题】_第14张图片

接下来回到主界面,选择要构建的源码项目以及使用的编译器,而后点击左下角的三角标志开始即可【无标题】_第15张图片

我在编译过程中主要出现了如下的问题
①源码缺少文件,去自己下载的源码位置查看对应的源码位置,去GitHub补全相应的文件放在相应的缺失位置,同时代码里面加上相应的路径
②出现类似没有生成“object”文件,参考(78条消息) QT QGC 中 QGCTileCacheWorker.cpp:728: error: C2220: 警告被视为错误 - 没有生成“object”文件_火山上的企鹅的博客-CSDN博客_d:\qgc\qgroundcontrol\src\qtlocationplugin\qgctile
改变编码格式
最重要的问题一般是编译前设置出现问题,哪里有问题去相应的代码位置或者相应文件夹看一下,代码错误或者和文件缺失,方法都是一样的
编译完毕会自动打开QGC地面站
会生成在相应的软件文件【无标题】_第16张图片

可以里面找到生成的软件【无标题】_第17张图片

编译环境搭建完毕

你可能感兴趣的:(QGC二次开发,qt5,个人开发)