SilentStorm的个人博客分享 http://blog.sciencenet.cn/u/SilentStorm

博文

rtkplot_qt在Mac OS下的编译问题

已有 3934 次阅读 2018-11-8 10:41 |个人分类:计算机|系统分类:科研笔记| RTKLIB, rtkplot_qt

 RTKLIB2.4.3 P31版具有qt图形编程的版本(下载链接https://github.com/tomojitakasu/RTKLIB/tree/rtklib_2.4.3)


在mac或者linux平台下,终于可以使用rtkplot了。下面详述如何在mac或者linux下面编译rtkplot_qt。以Mac为例。

  1. 首先确认系统中是否安装了Qt,在shell中输入which qmake,如果没有输出,就是没有安装。使用下面的命令安装(linux下可能是别的命令,如Ubuntu下面是get-apt install 等):

    brew install qt      

    注:如果没有brew命令,说明你没有安装homebrew,可以使用下面的语句安装:

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    或者去官网按照指示安装 ,地址:https://brew.sh/

  2. 然后找到RTKLIB下面的app/rtkplot_qt文件夹下面,在shell中输入:qmake rtkplot_qt.pro && make

  3. 你会发现以下问题:

    1)会在postmain.cpp, postcmn.cpp 等文件中报错,如:

    �postmain.cpp:177:15: error: use of undeclared identifier 'LC_NUMERIC'

    这个问题很容易解决,到报错的文件头部添加 #include <locale.h> 即可。

    解决完这个问题,再用make编译,会出现下面的问题。

    2)会出现函数不能链接的问题,如:

      "_time2doy", referenced from:

          TimeDialog::showEvent(QShowEvent*) in timedlg.o

    这个问题的原因是有些c文件没有编译,而timedlg文件中的某些函数又需要用到未编译文件中的函数。解决办法:

    打开rtkplot_qt.pro文件,在SOURCEs += \  下面加入所有RTKLIB/src 以及RTKLIB/src/rcv文件夹下面的c文件;在HEADERS += \  下面加入RTKLIB/src/rtklib.h文件。如下所示(红色加粗行为加入的代码):


    SOURCES += \

        ../appcmn_qt/aboutdlg.cpp \

        conndlg.cpp \

        geview.cpp \

        mapdlg.cpp \

        plotcmn.cpp \

        plotdata.cpp \

        plotdraw.cpp \

        plotinfo.cpp \

        plotmain.cpp \

        plotopt.cpp \

        pntdlg.cpp \

        rtkplot.cpp \

        satdlg.cpp \

        skydlg.cpp \

        ../../src/rtkcmn.c \

        ../../src/rinex.c \

        ../../src/tle.c \

        ../../src/solution.c \

        ../../src/lambda.c \

        ../../src/geoid.c \

        ../../src/sbas.c \

        ../../src/preceph.c \

        ../../src/pntpos.c \

        ../../src/ephemeris.c \

        ../../src/options.c \

        ../../src/stream.c \

        ../../src/streamsvr.c \

        ../../src/rcvraw.c \

        ../../src/rcv/binex.c \

        ../../src/rcv/crescent.c \

        ../../src/rcv/ublox.c \

        ../../src/rcv/skytraq.c \

        ../../src/rcv/nvs.c \

        ../../src/rcv/gw10.c \

        ../../src/rcv/novatel.c \

        ../../src/rcv/rcvlex.c \

        ../../src/rcv/septentrio.c \

        ../../src/rcv/ss2.c \

        ../../src/rcv/javad.c \ 

        ../../src/rcv/rt17.c \

        ../../src/rcv/tersus.c \

        ../../src/rcv/cmr.c \

        ../../src/convrnx.c \

        ../../src/rtcm.c \

        ../../src/gis.c \

        ../../src/rtcm2.c \

        ../../src/rtcm3.c \

        ../../src/rtcm3e.c \

        ../../src/ionex.c \

        ../../src/qzslex.c \

        ../appcmn_qt/refdlg.cpp \

        ../appcmn_qt/viewer.cpp \

        ../appcmn_qt/vieweropt.cpp \

        ../appcmn_qt/cmdoptdlg.cpp \

        ../appcmn_qt/fileoptdlg.cpp \

        ../appcmn_qt/serioptdlg.cpp \

        ../appcmn_qt/tcpoptdlg.cpp \

        ../appcmn_qt/keydlg.cpp \

        ../appcmn_qt/graph.cpp \

        ../appcmn_qt/console.cpp \

        ../appcmn_qt/tspandlg.cpp \

        fileseldlg.cpp \

        ../appcmn_qt/gmview.cpp \

        vmapdlg.cpp

    HEADERS  += \

        ../appcmn_qt/aboutdlg.h \

        conndlg.h \

        geview.h \

        mapdlg.h \

        plotmain.h \

        plotopt.h \

        pntdlg.h \

        satdlg.h \

        skydlg.h \

        ../../src/rtklib.h \

        ../appcmn_qt/refdlg.h \

        ../appcmn_qt/viewer.h \

        ../appcmn_qt/vieweropt.h \

        ../appcmn_qt/cmdoptdlg.h \

        ../appcmn_qt/fileoptdlg.h \

        ../appcmn_qt/serioptdlg.h \

        ../appcmn_qt/tcpoptdlg.h \

        ../appcmn_qt/keydlg.h \

        ../appcmn_qt/graph.h \

        ../appcmn_qt/console.h \

        ../appcmn_qt/tspandlg.h \

        fileseldlg.h \

        ../appcmn_qt/gmview.h \

        vmapdlg.h

    再运行qmake rtkplot_qt.pro && make即可。然后再文件夹中找到rtkplot_qt文件,双击运行即可。



  4. 图片效果不如windows下面的效果好,但是能用,解决了基本问题。




https://blog.sciencenet.cn/blog-2958868-1145157.html

上一篇:Xcode debug打印数组
下一篇:在shell中快速查看数据图像,使用gnuplot
收藏 IP: 27.225.162.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-9-23 11:47

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部