安装qt5.15.2
下载QT安装包,需要注册账号
管理员权限执行,可以安装在opt目录下,避免用户目录下太乱
sudo ./qt-unified-linux-x64-4.2.0-online.run
#sudo ./qt-online-installer-linux-x64-4.8.1.run --mirror https://mirrors.tuna.tsinghua.edu.cn/qt
安装如下的包
gcc 64-bit
Qt Charts
然后在.bashrc中加入如下内容:
export PATH="/opt/Qt/Tools/QtCreator/bin:$PATH"
export PATH="/opt/Qt/5.15.2/gcc_64/bin:$PATH"
export LD_LIBRARY_PATH=/opt/Qt/5.15.2/gcc_64/lib:$LD_LIBRARY_PATH
运行
qmake -v
得到
QMake version 3.1
Using Qt version 5.15.2 in /opt/Qt/5.15.2/gcc_64/lib
否则还是用系统自带的qt,很容易提示你缺东西
编译命令
可以打开QT进行
或者在qgroundcontrol目录下新建build文件夹,进入其中
qmake ..
#qmake .. DEFINES=DISABLE_AIRMAP
make -j12
其中-j12代表多线程数量,有几个就用几个
最后进入staging目录
./QGroundControl
几个小问题
缺包
sudo apt-get install speech-dispatcher libudev-dev libsdl2-dev patchelf
缺文件
去nlohmann_json下载下来放进libs\libevents\libevents\libs\cpp\parse\。
提示缺文件的:
QGCExternalLibs.pri中添加:
INCLUDEPATH += libs/libevents/libevents/libs/cpp/parse/nlohmann_json/include
INCLUDEPATH += libs/airmapd/include
client.h报错
issue里面有一个类似的问题
qmake的时候加上一个参数
qmake DEFINES=DISABLE_AIRMAP ..
卸载一些包
sudo usermod -a -G dialout $USER
sudo apt-get remove modemmanager