GNURadio安装和使用过程中遇到的问题和应对

本文详细介绍了GNU Radio的官方下载与安装步骤,并针对Windows环境下常见的问题提供了解决方案,包括环境变量配置、Python库使用及PyCharm集成等。

GNU官方下载

GNURadio官方下载地址:[GNURadio 3.7.x Win64 Binaries - Download]
gcndevelopment.com/gnuradio/downloads
对应电脑系统:Windows 7/10… 64位
我的 Python IDE:pycharm-community-2016.3.2
下载个最新的GNU,3.7.12 之类的。

2019.11:目前最新:gnuradio_3.7.13.5_win64.msi
2018.05:目前最新:gnuradio_3.7.12_win64.msi,文件大小:467MB
安装的时候个人建议是把安装路径 GNURadio-3.7 的杠“-” 去掉,或者直接 C:\GNURadio\ ,少符号就少生事,方便后续操作

安装遇到的问题和应对

声明:若不修改环境变量等,安装GNU后直接用PyCharm运行GNU生成的 *.py,PyCharm会报错 “DLL not found”,甚至GNURadio软件本身在Excute图文件的时候都会报错!

  1. 安装GNURadio前,(非必须)可以卸载已安装的任何版本Python,如果不想在出现版本冲突之后再搞一轮环境的话。但可以把安装过的包 /libs/ite-packages 留下。
    安装完成后,运行开始菜单或桌面的 GNURadio Companion ,即进入GNURadio的流图编辑,此时可以根据官方文档或网上的基础使用教程来拖拽几个模块,然后尝试Execute流图,看GNU软件是否能正常运行
  2. 修改系统环境变量 Path,我的电脑 - 属性 - 高级系统设置 - 环境变量 - 系统变量
    每个路径要用分号隔开:
//  WIN7,一整块路径,每个路径以分号结束,注意第五行有两个路径
C:\GNURadio\gr-python27\;
C:\GNURadio\gr-python27\lib\site-packages\PyQt4;
C:\GNURadio\gr-python27\Scripts;
C:\GNURadio\gr-python27\lib\site-packages\pip-9.0.1-py2.7.egg\pip;
C:\GNURadio\bin;C:\GNURadio\lib\site-packages\gnuradio;
C:\GNURadio\lib\site-packages\gnuradio\gr;
C:\GNURadio\lib\site-packages\gnuradio\qtgui; 

// 需要复制上面这串的请把它们合并成单独、连续的一行

// WIN10,便于一个个添加到系统环境变量Path
C:\GNURadio\gr-python27\
C:\GNURadio\gr-python27\lib\site-packages\PyQt4
C:\GNURadio\gr-python27\Scripts
C:\GNURadio\gr-python27\lib\site-packages\pip-9.0.1-py2.7.egg\pip
C:\GNURadio\bin
C:\GNURadio\lib\site-packages\gnuradio
C:\GNURadio\lib\site-packages\gnuradio\gr
C:\GNURadio\lib\site-packages\gnuradio\qtgui

继续,添加系统环境变量 PYTHONPATH

C:\GNURadio\lib\site-packages\

在两台WIN7电脑中按照此法安装,都在PyCharm内能Run,不报错

  • 附注:(以下粗体字的两个内容对应的路径必须添加到环境变量)
    \gr-python27; 在cmd shell直接输入python,进入python环境
    \Scripts; 在cmd直接运行该文件夹下的各种,如pyinstaller等
    \pip; cmd直接运行pip
    \gnuradio; 这个必须有,GNU图里的模块不少从这来,PyCharm也要用
    \gr 和 \qtgui 了解的不多,这里先不做实验了
    \PyQt4; 是GNU自带的PyQt给它自用的,不想另外编辑界面(这Qt4本身并没有designer.exe,得另外去找或者安装,或卸载再安装)的话就少来折腾这个,很烦人。这里先不做实验了。

GNURadio自带Python2.7库 使用相关

  1. GNU自带的pip报错:pip 报 failed to create process
    打开 pip-script .py 文件,文件位置 \gr-python27\Script\,打开文件,在第一行替换或添加如下代码,为GNU自带python.exe的路径
#!C:\GNURadio\gr-python27\python.exe

PyCharm相关

依旧是IDE的环境变量先行:
修改PyCharm Settings里的Project Interpreter指向GNURadio自带的python.exe
PyCharm - File - Settings - Project Interpreter - 小齿轮按钮 - More -
添加 C:\GNURadio\gr-python27\python.exe
添加之后点下面第5个按钮show Paths…,能点刷新就点两下,成功的话会看见GNU的python2.7路径添加进来。

打包成 *.exe 各种报错

安装pyinstaller,使用报错:cannot check for assembly dependencies

安装:pip install pyinstaller
升级:pip install --upgrade pyinstaller
把*.py打包成*.exe:pyinstaller -F -w F:\RTLSDR\123.py

报错 cannot check,要安装 PyWin32 或者 pywin32-ctypes

pip install pywin32-ctypes 或 pip install PyWin32

继续报错,在PyCharm内引用win32com也开始报错 DLL not found
(此时还能正常在PyCharm中run那些GNU生成的graph流图程序*.py)

接下来,删掉 \GNURadio\gr-python27\lib\site-packages 下的三个文件夹
(以防万一,可以都打成压缩包后再删掉,备份用)
pywin32_system32、win32、win32com
此时用PyInstaller可以打包.exe,exe能运行,但生成过程中提示找不到win32com,暂时不理它(以后碰上问题再说!)

结尾

刚开始配置GNU环境花了不少时间…
把GNU流图生成的*.py放到PyCharm里边run又花了不少时间…
就先记在这里,以后碰到的再一个个想办法解决。

<think>我们正在回答用户关于在Linux系统上安装GNU RadioUHD驱动的问题。根据引用资料,有多种安装方式,包括源码编译安装包管理器安装。我们将结合引用资料提供两种主要方法:使用包管理器(apt)安装从源码编译安装。注意,不同Linux发行版版本可能略有差异,这里以Ubuntu 18.04为例。 ### 方法1:使用apt安装(适用于快速安装,但版本可能不是最新) 1. 更新软件包列表: ```bash sudo apt update ``` 2. 安装UHD驱动: ```bash sudo apt install libuhd-dev uhd-host ``` 安装完成后,可以运行以下命令下载UHD FPGA镜像: ```bash sudo uhd_images_downloader ``` 3. 安装GNU Radio: ```bash sudo apt install gnuradio ``` 这种方法安装的GNU Radio版本可能较低(Ubuntu 18.04默认仓库中的版本可能是3.7.x),但安装过程简单。 ### 方法2:源码编译安装(可获取最新版本,但过程复杂) #### 安装依赖 首先安装必要的依赖包: ```bash sudo apt update sudo apt install -y git cmake g++ libboost-all-dev libgmp-dev swig python3-numpy \ python3-mako python3-sphinx python3-lxml doxygen libfftw3-dev \ libsdl1.2-dev libgsl-dev libqwt-qt5-dev libqt5opengl5-dev liblog4cpp5-dev \ libzmq3-dev python3-yaml python3-click python3-click-plugins python3-zmq \ python3-scipy python3-gi-cairo ``` #### 安装VOLK(Vector Optimized Library of Kernels) VOLK是GNU Radio的一个核心模块,需要先安装: ```bash cd ~ git clone --recursive https://github.com/gnuradio/volk.git cd volk mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 ../ make -j$(nproc) make test sudo make install sudo ldconfig ``` #### 安装UHD 1. 克隆UHD源码: ```bash cd ~ git clone https://github.com/EttusResearch/uhd.git ``` 2. 编译安装: ```bash cd uhd git checkout v3.14.1.0 # 可以指定版本,如v3.14.1.0 cd host mkdir build cd build cmake ../ make -j$(nproc) make test # 可选,运行测试 sudo make install sudo ldconfig ``` 3. 下载FPGA镜像: ```bash sudo uhd_images_downloader ``` #### 安装GNU Radio 1. 克隆GNU Radio源码: ```bash cd ~ git clone https://github.com/gnuradio/gnuradio.git ``` 2. 编译安装(以3.9版本为例): ```bash cd gnuradio git checkout v3.9.0.0 # 切换到3.9版本 mkdir build cd build cmake ../ make -j$(nproc) make test # 可选 sudo make install sudo ldconfig ``` ### 验证安装 - 验证UHD:运行`uhd_find_devices`,如果返回设备信息(即使没有连接设备也应返回空列表)则安装成功。 - 验证GNU Radio:运行`gnuradio-companion`,如果弹出图形界面安装成功。 ### 注意事项 1. 源码编译安装时,请确保有足够的编译时间(可能需要数十分钟到数小时)。 2. 如果系统中存在多个版本的GNU Radio,可能需要调整环境变量(如PATHLD_LIBRARY_PATH)来指定使用的版本。 3. 安装过程中如果遇到依赖问题,请根据错误提示安装相应的依赖包。 以上步骤参考了引用[1][2][3][4][5]的内容,并结合了常见的Linux软件编译安装流程。 §§相关问题§§ 1. 如何解决安装过程中出现的依赖问题? 2. 如何更新UHDGNU Radio到最新版本? 3. 如何在无USRP设备的情况下测试GNU Radio? 4. 如何配置GNU RadioUSRP设备进行通信?</think>### 在Linux系统上安装GNU RadioUHD驱动的完整指南 #### 一、安装前的准备工作 1. **系统要求** - Ubuntu 18.04或更高版本(其他Linux发行版需调整命令) - 至少4GB内存,20GB磁盘空间 - 稳定的网络连接(需下载约1-2GB数据) 2. **安装依赖项** 执行以下命令安装编译工具基础库: ```bash sudo apt update sudo apt install -y git cmake g++ libboost-all-dev libgmp-dev \ swig python3-numpy python3-mako python3-sphinx python3-lxml \ doxygen libfftw3-dev libsdl1.2-dev libgsl-dev libqwt-qt5-dev \ libqt5opengl5-dev liblog4cpp5-dev libzmq3-dev python3-yaml \ python3-click python3-click-plugins python3-zmq python3-scipy ``` --- #### 二、安装UHD驱动(两种方法) ##### 方法1:APT快速安装(推荐新手) ```bash sudo apt install libuhd-dev uhd-host sudo uhd_images_downloader # 下载FPGA镜像 ``` *验证安装*:`uhd_find_devices` 应返回设备列表[^3][^5] ##### 方法2:源码编译安装(获取最新版) ```bash git clone https://github.com/EttusResearch/uhd.git cd uhd/host mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -j$(nproc) sudo make install sudo ldconfig ``` *关键参数*: - `-DCMAKE_BUILD_TYPE=Release` 启用优化 - `-j$(nproc)` 使用全部CPU核心加速编译[^2][^5] --- #### 三、安装GNU Radio 1. **安装VOLK核心库** ```bash git clone --recursive https://github.com/gnuradio/volk.git cd volk && mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 .. make -j$(nproc) sudo make install sudo ldconfig ``` 2. **编译安装GNU Radio** ```bash git clone https://github.com/gnuradio/gnuradio.git cd gnuradio git checkout v3.9.0.0 # 指定版本 mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -j$(nproc) sudo make install sudo ldconfig ``` 3. **验证安装** ```bash gnuradio-companion --version # 应显示3.9.x ``` --- #### 四、故障排除 | 常见问题 | 解决方案 | |---------|---------| | FPGA镜像下载失败 | 手动下载:`sudo uhd_images_downloader -t /usr/local/share/uhd/images` | | 找不到USRP设备 | 检查USB权限:`sudo usermod -aG usb $USER` 后重启 | | 导入模块错误 | 更新PYTHONPATH:`export PYTHONPATH=/usr/local/lib/python3/dist-packages:$PYTHONPATH` | | VOLK编译失败 | 确保安装python3-dev:`sudo apt install python3-dev`[^2] | > 注:完整编译过程可能需1-2小时,建议使用SSH保持会话连接
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值