【SDR】UHD安装教程
USRP作为软件无线电系统中常用的射频设备,其驱动UHD的安装及稳定运行,是SDR系统稳定的必备条件,该篇博客总结UHD的相关安装方法,主要有三种,分别是apt-get、github clone源码编译以及官网下载源码编码。下面对三种方法进行简单介绍,系统为Ubuntu14.04,其他系统过程基本类似。
apt-get install UHD
Ubuntu系统中,通过apt-get来进行软件的安装,无非是一种快速简单的方法,但是对于UHD的安装,通过以下apt-get install uhd命令进行安装,其UHD的版本无法确定,从而导致一些开源的项目无法使用UHD或者不稳定,因此不建议使用apt-get install来直接安装UHD。
当然,如果SDR项目对UHD的版本支持很低的话,可以使用以下命令来进行安装:
sudo add-apt-repositoryppa:ettusresearch/uhd sudo apt-get update sudo apt-get install libuhd-dev libuhd003 uhd-host
在国内,可能因为需要翻墙的缘故,添加源之后,无法访问到最新的UHD版本,因此还是推荐使用后两种方法。
Github clone源码编译
githubclone源码编译,即从uhd的github上clone源代码,并切换到稳定版本,之后记性源码编译安装,下面详细介绍该过程。
(a)git 代码
git clone https://github.com/EttusResearch/uhd cd uhd git checkout release_003_010_000_000 // 这里安装的是版本,对于一些系统需要安装的版本不同,这里安装的是3.10.0.0,根据我的经验,3.10.0.0以及3.10.0.2对于OAI、srsLTE、Amarisoft来说,比较稳定。
(b)安装依赖
sudo apt-get install libboost-all-dev libusb-1.0--dev python-cheetah doxygen python-docutils g++ cmake python-setuptools python-mako
如果在安装的过程中,出现无法安装的包,可以采用其他软件管理工具进行安装,如easyinstall、aptitude等。
(c)编译
cd uhd/host/ mkdir build cd build cmake ../ make -j8 //由于编译比较慢,所以选择使用8个”处理器”来提速 make test sudo make install sudo ldconfig //更新动态链接库
(d)镜像下载
sudo uhd_images_downloader //有时候会很慢,也可以通过手动下载对应版本的镜像,然后放到对应位置即可。
(e)测试:如果以上步骤均完成,则可以将usrp插入电脑,进行测试
//查找设备 sudo uhd_find_devices //查看设备信息 sudo uhd_usrp_probe
(f)ROOT权限
按照以上安装步骤完成之后,使用的时候,必须sudo才能执行UHD的命令,因此,可以通过设置ROOT权限直接执行UHD命令。
cd /usr/local/lib/uhd/utils sudo cp uhd-usrp.rules /etc/udev/rules.d/ sudo udevadm control --reload-rules sudo udevadm trigger
注意:当
cd /usr/local/lib/uhd/utils
提示没有这个文件或目录时,查看自己的文件放在哪个目录下面了,改成相应的即可。
官网源码编译
官网下载源码进行编译,即从Ettus官网下载对应的UHD版本以及镜像,然后如上面的步骤进行编译即可。
下载UHD链接为http://files.ettus.com/binaries/uhd_stable/,从里面选择对应的版本即可,下载镜像链接为http://files.ettus.com/binaries/images/,一定要让镜像与UHD的版本对应,否则可能出问题。
需要注意的是通过手动下载镜像后,首先需要将镜像解压,然后拷贝到对应的目录之下,命令如下所示:
sudo mkdir /usr/local/share/uhd sudo cp –r uhd-images_003_010_000_000-release/share/uhd/images/usr/local/share/uhd
原文链接:https://blog.csdn.net/jipengwang/article/details/79451729
【SDR】UHD安装教程的更多相关文章
- OpenLTE安装教程
安装需求: USB3 interface Modern multicore CPU (Intel Core i5, Core i7 or equivalent with SSE4.1 SSE4.2 a ...
- Linux+apache+mono+asp.net安装教程
Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...
- Greenplum 源码安装教程 —— 以 CentOS 平台为例
Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...
- git 安装教程
昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH
- Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程
此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...
- RHEL 6.3 详细安装教程
以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...
- Android Studio的下载和安装教程(从ADT到AS)
之前一直使用的是Android development tools(简称ADT),后来说是google对ADT不再提供支持,然后一直在考虑是否把自己电脑换成Android Studio(简称AS),从 ...
- mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)
♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...
- Smokeping安装教程
Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978 环境 CentOS release 6.4 (F ...
随机推荐
- 【jQuery】attr()、prop()、css() 的区别(转载)
.attr( ) 可以设置元素的属性(也就是给元素新增加一个原来并不存在的属性)也可以获取元素的本来就有的属性以及额外设置的属性.如果要获取的属性没有设置,那么获取到的结果是 undefined; . ...
- CF444A DZY Loves Physics【结论】
题目传送门 话说这道题不分析样例实在是太亏了...结论题啊... 但是话说回来不知道它是结论题的时候会不会想到猜结论呢...毕竟样例一.二都有些特殊. 观察样例发现选中的子图都只有一条边. 于是猜只有 ...
- 【计算机视觉】TPAMI的Editors
写了一篇文章准备试试TPAMI,没指望中,就当听听意见也好,让选两个Editors (2 preferred editors required),于是调研了一下这些人都是做什么的,有同行路过请评价补充 ...
- C#常用处理数据类型转换、数据源转换、数制转换、编码转换相关的扩展
public static class ConvertExtensions { #region 数据类型转换扩展方法 /// <summary> /// object 转换成string ...
- React生命周期使用
组件的生命周期可分成三个状态: Mounting:已插入真实 DOM Updating:正在被重新渲染 Unmounting:已移出真实 DOM 生命周期的方法有: componentWillMoun ...
- Redis(1.2)Redis的数据结构与基本操作
Redis的数据结构,其本身大方向是键值对 [0]大概特点 相关产品:Redis.Riak.SimpleDB.Chordless.Scalaris.Memcached 形式:Key 指向 Value ...
- webservice的hello world
整个项目的目录结构是 Mycontroller.java:可以在localhost:8080/hello中查看 //Mycontroller.java package com.chenyun.cont ...
- Redis 是怎么实现 “附近的人” 的?
针对"附近的人"这一位置服务领域的应用场景,常见的可使用PG.MySQL和MongoDB等多种DB的空间索引进行实现. 而Redis另辟蹊径,结合其有序队列zset以及geohas ...
- C#面向对象15 多态
多态 概念:让一个对象能够表现出多种的状态(类型) 实现多态的3种手段:1.虚方法 2.抽象类 3.接口 1.虚方法 步骤:1.将父类的方法标记为虚方法,使用关键字 virtual,这个函数可以被子类 ...
- Mycat1.6启动报NumberFormatException解决方案(server内存太大)
https://blog.csdn.net/lijieshare/article/details/84826280 2019-09-02 18:28:27,829 [ERROR][main] 2019 ...