QG地面站
使用容器构建社区创建了一个docker映像,使构建基于Linux的QGC应用程序变得更加容易。这可以给你一个巨大的提高生产力,并帮助测试。
关于容器容器位于./deploy/docker目录。它基于ubuntu 20.04。它在构建时预先安装所有依赖项,包括Qt,这要归功于位于同一目录中的脚本,install-qt-linux.sh。使用容器的主要优点是使用CMake构建系统及其许多改进qmake
建造容器脚本要使用脚本构建容器,请在qgc根目录中运行此命令
./deploy/docker/run-docker-ubuntu.sh
手册如果您想手动使用容器构建,那么您首先必须构建映像。您可以使用docker完成此操作,从QGC源代码目录的根目录运行以下脚本。
docker build --file ./deploy/docker/Dockerfile-build-ubuntu -t qgc-ubuntu-docker .
信息
的-t国旗是必不可少的。请记住,这是标记图像以供以后参考,因为您可以拥有同一容器的多个构建
信息
如果在具有M1芯片的Mac计算机上构建,则还必须指定构建选项--platform linux/x86_64如图所示:
docker build --platform linux/x86_64 --file ./deploy/docker/Dockerfile-build-ubuntu -t qgc-ubuntu-docker .
否则你会得到一个构建错误:
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
使用容器构建QGC要使用容器构建QGC,首先需要定义一个目录来保存工件。我们建议您创建一个build目录,然后使用上面提供的标签从根目录运行docker映像,如下所示:
mkdir build
docker run --rm -v ${PWD}:/project/source -v ${PWD}/build:/project/build qgc-ubuntu-docker
信息
有关最新的docker命令和选项,请参考中的相关运行脚本deploy/docker,例如run-docker-ubuntu.sh。
信息
如果使用脚本在Windows主机上构建Linux映像,则需要以不同的方式引用PWD。在Windows上,docker命令是:
docker run --rm -v %cd%:/project/source -v %cd%/build:/project/build qgc-ubuntu-docker
根据您的系统资源或分配给Docker守护程序的资源,构建步骤可能需要一些时间。
故障排除Windows: 'bash \ r': 没有这样的文件或目录此错误表明Linux脚本正在使用Windows行尾运行,如果git配置为使用Windows行尾:
> [4/7] RUN /tmp/qt/install-qt-linux.sh:
#9 0.445 /usr/bin/env: 'bash\r': No such file or directory
一种修复方法是使用命令强制Linux行尾:
git config --global core.autocrlf false
然后更新/重新创建本地存储库。