Ubuntu20.04LTS+uhd3.15+gnuradio3.8.1源码编译及安装


前言

本地 Ubuntu 环境的 gnuradio 是按照官方指导使用 ppa 的方式安装 uhd 和 gnuradio 的,也是最方便的方法,但是存在着一个问题,就是我无法修改底层 C++ 实现代码并修改自己想要的功能,我现在的需求就是对部分 block 的底层代码进行修改,因此需要源码编译及安装,并在每次修改完相关文件后重新对源码进行编译再安装即可。


一、卸载本地 gnuradio

1、更新包列表

sudo apt-get update	

2、卸载GNU Radio

sudo apt-get remove gnuradio

3、删除所有相关的配置文件

sudo apt-get remove --purge gnuradio

4、清除不再需要的依赖项

sudo apt-get autoremove

二、安装 UHD 驱动

因为我目前不需要修改 UHD 的底层 C++ 代码,且 Ubuntu 中已有 UHD3.15 的驱动(之前按照官方指导使用 ppa 的方式安装的),因此这里就无需卸载和用源码编译安装了,因此跳过此步。

通过下面命令来检查 UHD 是否安装成功

1、列出计算机上可识别的 USRP 设备

uhd_find_devices

输出如下:
在这里插入图片描述
2、获取连接到计算机的 USRP 设备的更详细信息

uhd_usrp_probe

部分信息如下:
在这里插入图片描述

三、编译及安装 gnuradio

在终端依次输入下面命令:

cd $HOME
mkdir workarea
git clone --recursive https://github.com/gnuradio/gnuradio.git

cd gnuradio
git clone https://github.com/gnuradio/volk.git

git checkout maint-3.8
cd volk

git checkout v2.2.1
cd ..
mkdir build
cd build
 
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 ../
 
make -j4 
make test
sudo make install
sudo ldconfig

#添加环境变量
vi ~/.bashrc
#将下面这两句话添加到.bashrc的最后一行,注意按照自己的python版本修改,我的是3.8所以下面是/python3.8/
export PYTHONPATH=/usr/local/lib/python3/dist-packages:/usr/local/lib/python3.8/dist-packages:$PYTHONPATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  

#更新环境变量
source ~/.bashrc

四、验证

1、打开 gnuradio

gnuradio-companion

可以看到下面界面
在这里插入图片描述

如果打开出现 No module named gnuradio,尝试 reboot 重启一下

2、接上 USRP 进行自收自发测试,可以看到 OFDM 频谱图如下:
在这里插入图片描述

参考:Ubuntu20.04安装UHD3.15+GNURadio3.8


我的qq:2442391036,欢迎交流!


相关推荐

  1. Ubuntu手动编译安装Python

    2024-03-30 05:18:06       24 阅读
  2. ubuntu编译安装memcached和php-memcache 扩展

    2024-03-30 05:18:06       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-30 05:18:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-30 05:18:06       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-30 05:18:06       82 阅读
  4. Python语言-面向对象

    2024-03-30 05:18:06       91 阅读

热门阅读

  1. clickhouse 查询group 分组最大值的一行数据。

    2024-03-30 05:18:06       41 阅读
  2. centos安装snap

    2024-03-30 05:18:06       37 阅读
  3. Flink 中 Slot 机制详解:概念、原理与开发实践

    2024-03-30 05:18:06       43 阅读
  4. 解决WordPress文章的段落首行自动空两格的问题

    2024-03-30 05:18:06       40 阅读
  5. k8s小白的学习初体验

    2024-03-30 05:18:06       50 阅读
  6. C#热门技术应用:跨平台、异步编程与云原生

    2024-03-30 05:18:06       37 阅读
  7. 《Linux 源码趣读》的读书笔记-第1部分

    2024-03-30 05:18:06       35 阅读
  8. vue-路由详解

    2024-03-30 05:18:06       39 阅读
  9. 微信小程序uniapp+vue3+ts+pinia的环境搭建

    2024-03-30 05:18:06       43 阅读