最近在安装 GNSS-SDR软件时,遇到了很多问题,这里回顾了我的安装过程,罗列了所遇到的问题和解决办法。希望后来者不要再踩这些坑了!

  1. 首先,在官方文档中看到,GNSS-SDR目前并不支持直接在 Windows系统下直接运行,通常需要借助虚拟机构建客户操作系统(Linux),在虚拟系统内安装并运行该软件。

  2. 官网上给出的建议虚拟工具是(VirtualBox),于是我就去官网下载了最新版本的 VirtualBox5.2.12。具体安装和新建虚拟机的过程都算简单,在网上也能找到很多相关介绍,所以这里不再赘言。

  3. Linux系统,这里我选用了 Ubuntu,一来是之前就经常听到这个名称,很好奇到底是个啥东西;二来是搜到的教程所安装的就是 Ubuntu。所以去官网上下载了最新的 18.04版本,这里要吐槽一下,也许是因为墙的原因,很多次都是卡在下载之前的那个网页上,就发生了“404”现象,很气!

  4. 按照教程安装和配置好 Ubuntu之后,需要安装增强功能,在教程中去找那个光盘标志并执行弹出操作时,也许是因为教程中是16.04版本的问题,反正我就是找不到光盘标志,于是作罢。

  5. 命令行执行“sudo apt-get install gnss-sdr”,真正准备安装 GNSS-SDR了,结果报错“can not locate passage”。于是去百度解决方法,才知道默认 Ubuntu的下载源都在国外,速度很慢,需要切换国内的镜像源。教程也很多,这里给出一个看起来简单一点的,切换阿里云。切换完软件源之后,再执行“sudo apt-get install gnss-sdr”时,就不会再报这个错误了。

  6. 接下来要说的这个问题是本次安装过程中最恶心的问题了,但可能只是此次我遇到了,也许并不具有普遍性。就是所安装的 VirtualBox 5.2.12 + Ubuntu 18.04在虚拟系统开机、鼠标点击或执行操作时,经常会发生电脑蓝屏、卡死的现象。卡死了,只能强制关机,可笑的是强制关机或蓝屏后虚拟机内所进行的配置(源设置、下载的 GNSS-SDR)都没了,前前后后发生了十多次,我终于是不能忍,于是决定使用 VMWare,并且安装较低版本的 Ubuntu 16.04。

  7. 按照安装教程,在该网站下载了 VMware Workstation Pro 12,又在官网上下载了 Ubuntu 16.04,执行安装操作。总体安装过程其实与 VirtualBox 类似,大多都是直接执行“下一步”。

  8. 安装完虚拟 Ubuntu系统后,第一件事就是安装 VMware Tools,可以很方便的使虚拟系统全屏和进行宿主机与客户机的文件交换。安装  VMware Tools,我主要参考了这篇文章。安装完 VMware Tools后,令虚拟系统全屏,只需在 VMware的 “查看”菜单栏里点击“立即适应客户机”就可以了。然后就是设置共享文件夹,这个还是很有必要的,通过虚拟机进行操作所得到的文件通过这种方式也能够被宿主机使用。具体过程参照这里。进行完以上设置后,别忘记还要切换软件源!

  9. 接着在命令行执行“sudo apt-get install gnss-sdr”,这一次安装过程很顺利,没有像 VirtualBox那样会报“dpkg错误”或卡死的事情。测试是否成功安装 GNSS-SDR,命令行输入“GNSS-SDR --version”,结果显示的版本居然是“0.0.6”。官网上特别强调过,如果早于“0.0.9”的版本,对于所给出的测试用例,可能会有问题。没办法,只能卸载刚刚安装好的 GNSS-SDR,使用从源代码编译的方法来安装最新版本(0.0.9)的 GNSS-SDR了。

  10. 具体过程就是参考官网,一步步跟着操作就可以了。但在执行 “git clone https://github.com/gnss-sdr/gnss-sdr”时,下载速度特别慢,只有 5Kb/s,无法忍受。遂百度一下,发现这个问题很普遍,大家都会遇到,解决办法我用的是这一个,亲测可用。之后继续官网上给出的操作,就可以成功安装 GNSS-SDR了。使用 “GNSS-SDR --version”检测时,版本号也是最新的 “0.0.9”了,至此 GNSS-SDR的安装过程算是完成了。

  11. 下载测试数据,文件有 1.6G,还是挺大的,不知道是不是国外资源的问题,下载起来速度并不快。

  12. 之后就是制作配置文件,这里有几点需要格外注意。一、“GNSS-SDR.internal_fs_hz”应换成 “GNSS-SDR.internal_fs_sps”  二、SignalSource.filename那一项需要填写自己系统内数据文件的实际存放位置   三、Observables.implementation那一项中的 “GPS_L1_CA_Obserables”需要替换成“Hybrid_Observables”  四、PVT.implementation那一项的 “GPS_LA_CA_PVT”需要替换成“RTKLIB_PVT”。这样的话,配置文件也制作完了。

  13. 转到数据文件所在目录下,执行“gnss-sdr --config_file=./my-first-GNSS-SDR-receiver.conf"操作,即可顺利运行,并生成相应的文件。

  14. 官网上 “Configuration”部分主要是介绍数据源是硬件芯片时的配置,手头并没有相应芯片,所以这一节就跳过没看了。出于好奇,查了一下 “HackRF”芯片的价格,居然要 300美元,看来不是能随便玩的东西了。。。另外,还查了下制作团队的信息,发现他们都属于 "CTTC"。百度后,得知全称为“Center Tecnologic Telecommunications Catalunya”,翻译成中文就是“加泰罗尼亚电信科技中心”,怪不得下载到的数据文件是在 Spain测到的。不过很羡慕他们,平时做研究,周末可以去诺坎普看球呀。。。

好了,至此,本次按照 GNSS-SDR官网教程,安装和测试基本用例的过程就记录完毕了。

基于 win7下虚拟机的 GNSS-SDR安装过程的更多相关文章

  1. Windows下的lua-5.3.4安装过程

    Windows下的lua-5.3.4安装过程 Mingw平台下的编译过程: $ make echo$ make mingw$ make local $ make echo PLAT= none CC= ...

  2. windows10下 MySQL5.7.18版本安装过程及遇到的问题

    windows10下 MySQL5.7.18版本安装过程及遇到的问题           mysql-5.7.18-winx64 安装           1.解压 此次将MySQL装在H盘,依个人喜 ...

  3. Win7下虚拟机个人使用小结:Virtual PC,VMware和VirtualBox

    想来用了很多年的虚拟机了,换了Win7之后,种种原因又需要使用虚拟机,这里就简单介绍和比较一下. 点击小图看大图. Virtual PC: 如果想做Windows虚拟机的话,Virtual PC在之前 ...

  4. golang学习之win7下go web之revel安装

    接着上回记录的win7下go环境搭建,go的开发,现在除了sublime外,LiteIDE比较推荐,下载链接 下载安装后直接打开,需要配置下go环境(本机使用的是window 386版本),如下: 打 ...

  5. 在Ubuntu 14.04 TLS下openvas V8.0源代码安装过程

    [Qboy原创]详细记录源代码的安装过程 1.下载原代码 在http://www.openvas.org/install-source.html下载 Libraries 8.0.8 Scanner 5 ...

  6. win7下虚拟机安装mac 转载自 http://itbbs.pconline.com.cn/50602805.html

    最近,不断有人问起,如何在vmware下安装MAC系统.起因是以前曾发过一篇贴,在vmware8下安装MAC的方法.于是,重新下载了最新版苹果系统10.8.5,终于成功安装.现将注意事项及过程与各位朋 ...

  7. win7下Arduino Mega 2560驱动安装失败解决办法

    因为玩四轴用的apm的飞控板,而其需要安装此驱动,曾经在win8使用其,但是因为win8有相对应的数字证书保护措施(应该是这样的,因为好久了记不清楚了),以至于我每次都需要长按shift重启电脑关闭此 ...

  8. win7下从ruby源代码编译安装

    工作中需要在c++代码中嵌入ruby c api,然而在vs工程中编译失败,所以现在通过手动从源代码编译ruby寻找原因(之前使用rubyinstaller安装).   先从官网下载ruby 2.4. ...

  9. win7下KiWi Syslog服务器的安装与配置

    今天就来聊聊日志服务器KiWi Syslog的安装与配置. 首先,所需文件有以下2个: 1.Kiwi_Syslog_Server_9.5.0.Eval.setup.exe[此版本只有14天寿命][Ki ...

随机推荐

  1. Spark Streaming简介

    离线计算和实时计算对比 1)数据来源 离线:HDFS历史数据 数据量比较大 实时:消息队列(Kafka),实时新增/修改记录过来的某一笔数据 2)处理过程 离线:MapReduce: map+redu ...

  2. 【Iperf】iperf测试wlan的性能

    1.概念: iperf命令是一个网络性能测试工具.iperf可以测试TCP和UDP带宽质量. iperf可以测量最大TCP带宽,具有多种参数和UDP特性.iperf可以报告带宽,延迟抖动和数据包丢失. ...

  3. 栈队列例题2:SetOfStack放盘子

    代码如下: import java.util.ArrayList; import java.util.Scanner; public class SetOfStack { public static ...

  4. Python用户交互以及数据类型

    一.用户交互与格式化输出 1.用户交互 1.1什么是用户交互 程序等待用户输入的数据,程序执行完毕后为用户反馈信息. 1.2为何程序要与用户交互 为了让计算机像人类一样与用户交互 1.3使用方式 在p ...

  5. css3实现iPhone滑动解锁

    该效果的主要实现思路是给文字添加渐变的背景,然后对背景进行裁剪,按文字裁剪(目前只有webkit内核浏览器支持该属性),最后给背景添加动画,即改变背景的位置,背景动画效果如下(GIF录制时有卡顿,代码 ...

  6. android studio gradle统一管理版本

    创建config.gradle ext { android = [ compileSdkVersion : 26, buildToolsVersion : "26.0.2", mi ...

  7. mysql启动报错,与selinux相关

    mysql启动报错,与selinux相关 如果遇到报错,可能的情况是 selinux 的关系,可以安装 setroubleshoot-server 工具,使用 sealert -a /var/log/ ...

  8. sql注入【手工及一些工具】

    Sql注入原理分析: 网站程序存在可控传递参数,参数未进行过滤直接带入数据库查询,导致攻击者可通过传递恶意sql语句代码进行执行攻击. Sql注入产生条件 1.必须有参数传递 2.参数值带入数据库查询 ...

  9. Java中的字符集

    Java中的字符集 1.字符集概述 字符集是各国家文字与字符编码对照表.字符可以看成是计算机中展示的图案效果,每个字符集都对每一种图案进行编码,有着一对一的对应关系.因此进行字符输出时,都需要指定使用 ...

  10. JavaScript 面向对象编程(三):非构造函数对象的继承

    JavaScript 面向对象编程(三):非构造函数对象的继承 一.什么是"非构造函数"的继承? 比如,现在有一个对象,叫做"中国人". var Chinese ...