Debian(ubuntu,raspberrypi)下编译安装rtklib_qt

最新的RTKLIB使用了跨平台的QT作为界面支持,这也就意味着LINUX下也可以使用RTKLIB的界面(虽然wine也是能跑RTKLIB的在win下编译的程序,不过原生总是要支持一下的)。本文主要说说RTKLIB在Debian系下的编译情况。

一、编译环境要求

编译rtklib_qt的的环境要求如下:

1. qt version >= 5.5
2. gcc >= 4.8
3. g++
4. gfortran

所以自然需要首先安装这些环境:

$ sudo apt-get install qt5-default gcc g++ gfortran

安装完成后确认一下版本:

$ qmake -v
QMake version 3.0
Using Qt version 5.2.1 in /usr/lib/x86_64-linux-gnu

显然,本人的默认的qt版本是偏低,因此某些功能无法安装。

二、编译过程

下载编码,比较新的源码在JensReimann的github上,手动载下载即可。

下载完成之后,解压,然后进入到主目录(RTKLib.pro所在的目录),然后运行:

$ qmake -recursive RTKLib.pro

就会在当前目录下生成makefile文件,然后再编译即可。

$ make

显然编译过程可能会出现QT库缺少的情况下,这个时候就是缺什么库就安装什么库。这些缺少的库都可以在源里面找到(前提是默认的qt版本没有什么问题)。如出现这样的错误:

videoopt.cpp:7:23: fatal error: QCameraInfo: No such file or directory
 #include <QCameraInfo>
                       ^

显然是缺少QCameraInfo这个qt库了,那就搜索并安装一个就行了。Debian下搜索主要有两种方式:

# 在源库名里面寻找
$ sudo apt-cache search QCameraInfo
# 在源文件中寻找
$ sudo apt-file search QCameraInfo

寻找到对应的包之后,只需要安装该包,然后继续执行make,编译会接着继续的。

三、如果Qt版本不够怎么办?

如果qt的版本不够怎么办?能否舍去其中一两个模块进行安装呢?答案是肯定的,毕竟RTKLIB界面之间具有独立性。,其中对版本要求较高的就是RTKVIDEO,如果qt的版本过低的话,这个模块是无法完全编译的。

那么如何将RTKvideo_qt模块去除呢?只需要将在app/app.pro的内容中的rtkvideo_qt这一行去掉即可。(即改成下面这个样子)

TEMPLATE = subdirs

SUBDIRS= rtknavi_qt \
         rtkget_qt \
         rtkplot_qt \
         rtklaunch_qt \
         srctblbrows_qt \
         strsvr_qt \
         rtkconv_qt \
         rtkvplayer_qt

然后重新切到上级目录,再重新运行即可。

$ qmake -recursive RTKLIB.pro
$ make
此条目发表在GNSS, LINUX, 软件安装分类目录,贴了, , 标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。