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安装教程的更多相关文章

  1. OpenLTE安装教程

    安装需求: USB3 interface Modern multicore CPU (Intel Core i5, Core i7 or equivalent with SSE4.1 SSE4.2 a ...

  2. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  3. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  4. git 安装教程

    昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH

  5. Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程

    此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...

  6. RHEL 6.3 详细安装教程

    以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...

  7. Android Studio的下载和安装教程(从ADT到AS)

    之前一直使用的是Android development tools(简称ADT),后来说是google对ADT不再提供支持,然后一直在考虑是否把自己电脑换成Android Studio(简称AS),从 ...

  8. mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)

    ♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...

  9. Smokeping安装教程

    Smokeping安装教程 #Smokeping2.6.8安装教程 #2016.3.6 改编v1.0 #Linux运维技术交流 347163978   环境 CentOS release 6.4 (F ...

随机推荐

  1. Leetcode之动态规划(DP)专题-123. 买卖股票的最佳时机 III(Best Time to Buy and Sell Stock III)

    Leetcode之动态规划(DP)专题-123. 买卖股票的最佳时机 III(Best Time to Buy and Sell Stock III) 股票问题: 121. 买卖股票的最佳时机 122 ...

  2. NProgress颜色的修改以及在Vue中的使用

    一.NProgress的作用是在站内进行页面之间的跳转的时候,在浏览器的顶部显示一个进度,使用非常简单,可以在百度一下. 二.如何修改NProgress默认的进度条颜色?如下图,修改为自己想要的颜色即 ...

  3. Angular ViewChild & ViewChildren

    基础 ViewChild ViewChild 装饰器用于获取模板视图中的元素或直接调用其组件中的方法.它支持 Type 类型或 string 类型的选择器,同时支持设置 read 查询条件,以获取不同 ...

  4. PTA(Advanced Level)1075.PAT Judge

    The ranklist of PAT is generated from the status list, which shows the scores of the submissions. Th ...

  5. 【转帖】CentOS 7 修改时区

    CentOS 7 修改时区 https://www.cnblogs.com/yaohong/p/7269878.html timedatectl 以及 time   分类: 操作系统-CentOS u ...

  6. PHPexcel使用 技巧

    phpexcel不用多说了  导出表格时经常会用到  本帖主要记录一下几个经常用到的操作 # 设置自动换行 $PHPExcel->getActiveSheet()->getStyle(&q ...

  7. paramiko-ssh-实现操作记录查看

    在paramiko源码包中的demos目录下-> vim interactive.py

  8. Java New IO

    1.NIO介绍 应用程序中,通常会涉及两种类型的计算:计算密集型和I/O密集型.对多数应用来说,花费在等待IO上的时间是比较大的.因此提高IO操作效率对应用的性能至关重要. 面向流的IO系统一次处理一 ...

  9. SQLServer 导入大容量sql文件

    cmd命令行,管理员身份运行 执行以下语句:E:\dbbak\abhs\SmartEnglish_data.sql 为文件路径,AbhsEnglish 为要导入的数据库 sqlcmd -i E:\db ...

  10. JSON函数表1

    jsoncpp 主要包含三个class:Value.Reader.Writer.注意Json::Value 只能处理 ANSI 类型的字符串,如果 C++ 程序是用 Unicode 编码的,最好加一个 ...