You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改UHD源码后如何使其与GNU Radio正常适配运行

GNU Radio适配自定义修改版UHD操作步骤

1. 清理旧版本残留

先卸载系统中预装的UHD、GNU Radio相关包,避免多版本冲突:

  • Debian/Ubuntu系系统执行:apt remove --purge uhd* gnuradio*
  • Fedora/CentOS系系统执行:dnf remove uhd* gnuradio*

清理手动安装的残留文件,避免cmake优先识别旧版本:

rm -rf /usr/local/lib/*uhd* /usr/local/include/uhd* /usr/local/share/uhd
rm -rf /usr/local/lib/*gnuradio* /usr/local/include/gnuradio* /usr/local/share/gnuradio

2. 编译安装自定义修改版UHD

进入你修改完成的UHD源码目录,编译时统一指定安装前缀为/usr/local,方便后续GNU Radio识别:

cd <你的UHD源码路径>/host
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
make -j$(nproc)
make install
ldconfig

安装完成后执行uhd_config_info --version,确认输出版本和你修改后的版本一致,确认UHD安装正常。

3. 配置UHD环境变量

将UHD的库路径、模块路径加到系统全局环境变量中,避免程序运行时找不到依赖:
编辑用户目录下的.bashrc(使用zsh则编辑.zshrc),添加以下两行:

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
export UHD_MODULE_PATH=/usr/local/lib/uhd/modules

保存后执行source ~/.bashrc使配置生效。

4. 源码编译GNU Radio关联自定义UHD

进入GNU Radio源码目录,编译时指定和UHD相同的安装前缀,cmake会自动扫描路径下的UHD库:

cd <你的GNU Radio源码路径>
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..

cmake执行完成后,务必检查输出日志中gr-uhd模块的状态,需要显示为Enabled,且关联的UHD版本为你刚才安装的自定义版本。如果扫描不到UHD,可手动指定UHD的cmake路径:cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DUHD_DIR=/usr/local/lib/cmake/uhd ..

确认配置无误后执行编译安装:

make -j$(nproc)
make install
ldconfig

5. 验证适配结果

  • 执行gnuradio-config-info --enabled-components,确认输出中包含gr-uhd项
  • 启动gnuradio-companion,拖入UHD源/ sink模块搭建简单流图并运行,无UHD版本不匹配、设备识别失败等报错即为适配成功

内容的提问来源于stack exchange,提问作者Mobi Zaman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 04:45:03