QGroundControl

依赖安装

Qt5.4

自从某个版本以后,编译 QGroundControl 要求 Qt5.4,Ubuntu 14.04 需要自行添加 ppa

1
2
$ sudo add-apt-repository ppa:beineri/opt-qt541-trusty
$ sudo apt-get install qt54tools qt54base qt54declarative qt54serialport qt54svg qt54webkit qt54quickcontrols qt54xmlpatterns qt54x11extras qt54websockets qt54sensors qt54script qt54quick1 qt54qbs qt54multimedia qt54location qt54imageformats qt54graphicaleffects qt54creator qt54connectivity

ppa 安装的 QT 位于 /opt/qt54,需要手动在 .bashrc 里添加来屏蔽系统 qt

1
2
## qt 5.4
source /opt/qt54/bin/qt54-env.sh

貌似加在 ~/.profile 会更好,登录就启用

SDL1.2

1
$ sudo apt-get install qtcreator qttools5-dev qtbase5-dev qt5-default qtdeclarative5-dev libqt5serialport5-dev libqt5svg5-dev libqt5webkit5-dev libsdl1.2-dev build-essential libudev-dev

定制编译

需要设置的编译选项可以创建并写在 user_config.pri 文件里,比如说关闭 qupgrade,设置 mavlink dialect 之类的。

1
2
DEFINES="DISABLE_QUPGRADE DISABLE_3DMOUSE"
MAVLINK_CONF="pixhawk"

额外功能

额外功能包括语音提示,3D flight view 之类的东西,参考官方指示安装

1
$ sudo apt-get install espeak libespeak-dev libopenscenegraph-dev

XBee

QGroundcontrol 内部包含了一个 xbee 的库,可以这样安装

1
2
3
$ cd libs/thirdParty/libxbee
$ make
$ sudo make install

编译

1
2
$ qmake
$ make

qmake 似乎执行一种 incremental build 的策略,据说不是很可靠,所以必要的时候需要先删除 build_release