1.RTKLIB环境配置和调试

1.源码下载

下载链接:rtklib
在这里插入图片描述
注:2.4.2 p13为稳定版本(标识p代表稳定版本),2.4.3 b34为最新实验版本(标识b)。点击2.4.3 b34 的Source Programs and Data 链接下载源码。
在这里插入图片描述

2.环境配置

**集成开发环境:**Visual Studio 2022

1.新建c++空白项目

在这里插入图片描述
在这里插入图片描述
项目路径:E:\My_RTKLIB\My_RTKLIB

2.RTKLIB源码整理

对下载的RTKLIB软件包中需要保留如下内容

  • (1)RTKLIB-rtklib_2.4.3\src文件夹
  • (2)RTKLIB-rtklib_2.4.3\app\consapp\rnx2rtkp\rnx2rtkp.c
  • (3)RTKLIB-rtklib_2.4.3\app\consapp\rtkrcv\conf

对保留数据进行处理

  • 将(2)的rnx2rtkp.c文件更名为main.c,移动至RTKLIB-rtklib_2.4.3\src。
  • 将(3)的conf文件夹也移动到src。

在这里插入图片描述

  • 将src内容复制粘贴至项目路径下E:\My_RTKLIB\My_RTKLIB。
    在这里插入图片描述
    -在项目路径新建data文件,放入待处理数据

3.开发环境配置

(1)项目添加头文件

  • 右键头文件>>>添加>>>添加现有项>>>选择rtklib.h

(2)头文件修改

//在rtklib.h添加如下内容
#define ENAGLO
#define ENAGAL
#define ENACMP
#define ENAQZS
#define ENAIRN

效果如下:
在这里插入图片描述
(3)项目添加源文件

  • 右键源文件>>>添加>>>添加现有项>>>选择所有.c文件(选择时可以选择以类型为排序方式然后进行多选)
  • 右键源文件>>>添加>>>新建筛选器>>>命名为rcv,然后右键rcv>>>添加>>>添加现有项>>>选择rcv文件夹的所有.c文件

(4)源文件修改

1)ephemeris.c文件,579行。

const sbssatp_t *sbs=NULL;

2)pntpos.c文件,252行。

double dion = 0.0, dtrp = 0.0, vmeas = 0.0, vion = 0.0, vtrp = 0.0;

在这里插入图片描述

(5)属性页配置

此时若直接运行会报如下错误:
在这里插入图片描述
在代码页显示如下:
在这里插入图片描述

1)解决:右键MyRTKLIB项目>>>属性>>>c/c++>>>预处理器>>>编辑预处理定义>>>添加WIN32)

在这里插入图片描述

此时运行错误更多啦:
在这里插入图片描述
其中的主要错误为:

错误 C4996 ‘fopen’: This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. My_RTKLIB E:\My_RTKLIB\My_RTKLIB\convgpx.c 93

2)解决:右键MyRTKLIB项目>>>属性>>>c/c++>>>常规>>>关闭SDL检查

在这里插入图片描述
再次运行:错误如下
在这里插入图片描述
3)解决:**右键MyRTKLIB项目>>>属性>>>VC++目录>>>包含目录>>>添加rtklib.h所在目录即可

在这里插入图片描述
再次运行:错误如下
在这里插入图片描述

4)解决:**右键MyRTKLIB项目>>>属性>>>链接器>>>输入>>>添加:

winmm.lib
ws2_32.lib

在这里插入图片描述

4.spp程序调试

(1) 设置输入参数:右键MyRTKLIB项目>>>属性>>>调试>>>输入命令参数

-k E:\My_RTKLIB\My_RTKLIB\conf\single.conf  E:\My_RTKLIB\My_RTKLIB\data\polyu2400\polyu2400.23o  E:\My_RTKLIB\My_RTKLIB\data\polyu2400\polyu2400.23p -o spp.pos -y 1 -x 3

在这里插入图片描述

参数解释

-k //-k表示输入参数文件
E:\MY_RTK_LIB\MY_RTK_LIB\conf\single.conf //参数文件
E:\MY_RTK_LIB\MY_RTK_LIB\data\polyu2400\polyu2400.23o //观测文件
E:\MY_RTK_LIB\MY_RTK_LIB\data\polyu2400\polyu2400.23p //
-o spp.pos //输出文件名(默认输出位置在项目路径)
-y 1 -x 3 //-y 1 打开调试输出 -x 3 表示输出详细程度为3

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/97038.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深度剖析java类和对象

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 在Java中,一切皆对象。 目录 一、类的定义和使用1.1类的定义格式1.2定义学生类 二、类的实例化三、this引…

《Flink学习笔记》——第九章 多流转换

无论是基本的简单转换和聚合,还是基于窗口的计算,我们都是针对一条流上的数据进行处理的。而在实际应用中,可能需要将不同来源的数据连接合并在一起处理,也有可能需要将一条流拆分开,所以经常会有对多条流进行处理的场…

基于Jenkins构建生产CICD环境(第三篇)

目录 基于Jenkins自动打包并部署docker环境 1、安装docker-ce 2、阿里云镜像加速器 3、构建tomcat 基础镜像 4、构建一个Maven项目 基于Jenkins自动化部署PHP环境 基于rsync部署 基于Jenkins自动打包并部署docker环境 1、安装docker-ce 在192.168.2.123 机器上&#x…

SQLI-labs-第三关

目录 知识点:单括号)字符get注入 1、判断注入点: 2、判断当前表的字段数 3、判断回显位置 4、爆库名 5、爆表名 6、爆字段名,以users表为例 7、爆值 知识点:单括号)字符get注入 思路: 1、判断注入点&#xff1…

HTML学习笔记02

HTML笔记02 页面结构分析 元素名描述header标题头部区域的内容(用于页面或页面中的一块区域)footer标记脚部区域的内容(用于整个页面或页面的一块区域)sectionWeb页面中的一块独立区域article独立的文章内容aside相关内容或应用…

测试理论与方法----测试流程的第四个步骤:执行测试,提出缺陷

8、执行测试—–>提交缺陷报告 测试流程:执行测试—–>提交缺陷报告 1、缺陷的概述(回顾) 结果角度:实际结果和预期结果不一致 需求角度:所有不满足需求或超出需求的,都是缺陷 2、缺陷的相关属性…

Glide分析和总结

1. Glide概述 Glide是一款图片处理的框架,从框架设计的角度出发,最基本要实现的就是 加载图片 和 展示。 它把一个图片请求封装成一个Request对象,里面有开启、暂停、关闭、清除网络请求、以及载体生命周期的监听等操作。然后通过RequestBu…

【Java基础增强】Stream流

1.Stream流 1.1体验Stream流【理解】 案例需求 按照下面的要求完成集合的创建和遍历 创建一个集合,存储多个字符串元素 把集合中所有以"张"开头的元素存储到一个新的集合 把"张"开头的集合中的长度为3的元素存储到一个新的集合 遍历上一步得…

ELK原理和介绍

为什么用到ELK: 一般我们需要进行日志分析场景:直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化…

CTFhub-文件上传-无验证

怎样判断一个网站是 php asp jsp 网站 首先,上传用哥斯拉生成 .php 文件 然后,用蚁剑测试连接 找到 flag_1043521020.php 文件,进去,即可发现 flag ctfhub{ee09842c786c113fb76c5542}

Android Native Code开发学习(三)对java中的对象变量进行操作

Android Native Code开发学习(三) 本教程为native code学习笔记,希望能够帮到有需要的人 我的电脑系统为ubuntu 22.04,当然windows也是可以的,区别不大 对java中的对象变量进行操作 首先我们新建一个java的类 pub…

(二十)大数据实战——Flume数据采集的基本案例实战

前言 本节内容我们主要介绍几个Flume数据采集的基本案例,包括监控端口数据、实时监控单个追加文件、实时监控目录下多个新文件、实时监控目录下的多个追加文件等案例。完成flume数据监控的基本使用。 正文 监控端口数据 ①需求说明 - 使用 Flume 监听一个端口&am…

python爬虫14:总结

python爬虫14:总结 前言 ​ python实现网络爬虫非常简单,只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点,方便以后复习。 申明 ​ 本系列所涉及的代码仅用于个人研究与讨论,并不会对网站产生不好…

Ansible学习笔记6

stat模块:获取文件的状态信息,类似Linux的stat状态。 获取/etc/fstab文件的状态。 [rootlocalhost tmp]# ansible group1 -m stat -a "path/etc/fstab" 192.168.17.106 | SUCCESS > {"ansible_facts": {"discovered_inter…

Vector 动态数组(迭代器)

C数据结构与算法 目录 本文前驱课程 1 C自学精简教程 目录(必读) 2 Vector<T> 动态数组&#xff08;模板语法&#xff09; 本文目标 1 熟悉迭代器设计模式&#xff1b; 2 实现数组的迭代器&#xff1b; 3 基于迭代器的容器遍历&#xff1b; 迭代器语法介绍 对迭…

在css中设计好看的阴影

在css中设计好看的阴影 在本文中&#xff0c;我们将学习如何将典型的盒子阴影转换为更好看的的阴影。 统一角度 当我们想要一个元素有阴影时&#xff0c;会添加box-shadow属性并修改其中的数字&#xff0c;直到满意为止。 问题是&#xff0c;通过像这样单独创建每个阴影&…

22-扩展

一 进程与线程;同步与异步任务;宏任务与微任务 一、进程与线程 一个程序只有一个进程,一个进程包含多个线程,单线程和多线程 二、同步与异步任务 同步任务:是指在主线程上排队执行的任务,只有前一个任务执行完毕,才能继续执行下一个任务。按顺序执行,可以看做单线程,…

C++之“00000001“和“\x00\x00\x00\x01“用法区别(一百八十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

入职字节外包一个月,我离职了

有一种打工人的羡慕&#xff0c;叫做“大厂”。 真是年少不知大厂香&#xff0c;错把青春插稻秧。 但是&#xff0c;在深圳有一群比大厂员工更庞大的群体&#xff0c;他们顶着大厂的“名”&#xff0c;做着大厂的工作&#xff0c;还可以享受大厂的伙食&#xff0c;却没有大厂…