最近在安装 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. [转]如何在.NET MVC中使用jQuery并返回JSON数据

    本文转自:http://blog.sina.com.cn/s/blog_48e42dc90100xp1p.html 二.开始实践 - jQuery端 假设我们要从服务器端获取一个文章列表,并把文章条目 ...

  2. python的面向对象的特性(继承、封装、多态)

    创建自已对象就python非常核心的概念,事实上,python被称为面向对象语言,本章会介绍如何创建对象.以及面向对象的概念:继承.封装.多态. 多态: 可对不同类的对象使用同样的操作. 封装:对外部 ...

  3. 前台异步传过来的URL中获取token/获取string链接中的token

    1.链接例子: string url = "http://domainName:port/1/2/3/4.htm?sysCode=1001020&token=QXJzemR3YXlW ...

  4. 浏览器缓存介绍之sessionStorage、localStorage、Cookie

    Cookie Cookie 是小甜饼的意思.顾名思义,cookie 确实非常小,它的大小限制为4KB左右,是网景公司的前雇员 Lou Montulli 在1993年3月的发明.它的主要用途有保存登录信 ...

  5. 各种推导式<"一行能解决的事,为什么要用那么多行">

    一.推导式 1.列表:[结果 for循环 条件筛选] 2.字典:{k:v for循环 条件筛选} 3.集合推导式{k for循环 条件筛选} ???为什么没有元组推导式 二.生成器表达式(元组表达式) ...

  6. 从零开始的全栈工程师——js篇2.21(事件对象 arguments 阻止事件默认行为兼容 事件委托 事件源对象)

    一.事件对象 1.常用的事件2.每个元素身上的事件都是天生存在的 不需要我们去定义 只需要我们给这个事件绑定一个方法 当事件触发的时候就会执行这个方法 3.事件绑定的写法 ①div.onclick=f ...

  7. angular解决压缩问题,和传送数据

    1.angular解决压缩的方法 var app = angular.module("mk",[]); app.controller("ctrl",['$sco ...

  8. 让你的sharepoint2013具有EMS快递查询的功能

    <iframe name="kuaidi100" src="http://www.kuaidi100.com/frame/app/index2.html" ...

  9. Android SQLite数据库之事务的学习

    SQLite是Android系统内置的一款轻量级的关系型数据库,它的运算速度非常快,占用资源很少,通常只需要几百K的内存就足够了.SQLite不仅支持标准的SQL语法,还遵循了数据库的ACID事务. ...

  10. Ubuntu 16.10 安装mysql

    打开终端 sudo apt update 完成后 sudo apt install mysql-server 中间会提示设置root 账户的密码 有的文章提到 还要 install mysql-cli ...