美文网首页
Pixhawk--QGroundControl固件编译

Pixhawk--QGroundControl固件编译

作者: WilsonGuo | 来源:发表于2023-09-04 15:08 被阅读0次

设计理念

QGC 旨在提供可跨多个操作系统平台以及多种设备尺寸和样式运行的单一代码库。

QGC 用户界面是使用Qt QML实现的。QML 提供硬件加速,这是平板电脑或手机等低功耗设备的一项关键功能。QML 还提供了一些功能,使我们能够更轻松地创建单个用户界面,该界面可以适应不同的屏幕尺寸和分辨率。

QGC UI 的目标更多的是平板电脑+触摸风格的 UI,而不是基于桌面鼠标的 UI。这使得单个 UI 更容易创建,因为平板电脑风格的 UI 也往往可以在台式机/笔记本电脑上正常工作。

获取源文件

克隆存储库(或您的分支),包括子模块:

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

更新子模块(每次拉取新源代码时都需要):

git submodule update --recursive

构建QGroundControl

使用容器

社区创建了一个 docker 镜像,使构建基于 Linux 的 QGC 应用程序变得更加容易。这可以极大地提高您的生产力并有助于测试。

容器位于./deploy/docker目录中。它基于 ubuntu 20.04。它在构建时预安装了所有依赖项,包括 Qt,这要归功于位于同一目录中的脚本install-qt-linux.sh。使用容器的主要优点是构建系统的使用CMake及其对容器的许多改进qmake

在使用容器之前,您必须构建镜像。您可以使用 docker 来完成此操作,从 QGC 源代码目录的根目录运行以下脚本。

docker build --file ./deploy/docker/Dockerfile-build-linux -t qgc-linux-docker .

使用容器构建 QGC

要使用容器构建 QGC,首先需要定义一个目录来保存工件。build我们建议您在源树上创建一个目录,然后使用上面提供的标签从根目录运行 docker 映像,如下所示:

mkdir build

docker run --rm -v ${PWD}:/project/source -v ${PWD}/build:/project/build qgc-linux-docker

根据您的系统资源或分配给 Docker 守护进程的资源,构建步骤可能需要一些时间。

原生构建

QGroundControl版本支持 macOS、Linux、Windows、iOS 和 Android。 QGroundControl使用Qt作为其跨平台支持库,并使用QtCreator作为其默认构建环境。

相关文章

网友评论

      本文标题:Pixhawk--QGroundControl固件编译

      本文链接:https://www.haomeiwen.com/subject/myccvdtx.html