4.2.3 适配GNURadio的USRP驱动安装与检测过程

总目录链接:https://blog.csdn.net/m0_37660088/article/details/122646925

说明:GNURadio的安装是在Ubuntu系统上,因此,在安装GNURadio和UHD驱动时需要先准备好Ubuntu系统。由于USRP连接的要求较高,不能以虚拟机的方式安装Ubuntu系统,使用虚拟机的方式检测不出USRP设备,根据我自身的需求,在电脑上安装了双系统,安装方法链接:6.1 Windows和Ubuntu双系统安装过程,可供大家参考。此外USRP设备连接计算机存在不能使用转接头等情况,使用转接头也有可能检测不出来,但不绝对。当我们准备好Ubuntu系统后就可以开始安装GNURadio和UHD驱动了。Ubuntu系统安装的版本为18.04。

装好Ubuntu系统后先进行软件更新

请添加图片描述
请添加图片描述
请添加图片描述
安装即可,速度较慢,耐心等待即可。

也可使用命令方式进行更新

  1. 点击右键找到“Open Terminal”。
    请添加图片描述
  2. 点击“Open Terminal”进入终端。
    请添加图片描述
  3. 分别输入以下两行命令即可,第一次使用sudo会要求输入密码(密码不显示,只管输入即可,最后按Enter键),如果出现无法更新完成的情况,那就多试几次,一般都是网速的问题。
 sudo apt update
 sudo apt upgrade

UHD驱动的安装

提示:Linux系统有别于Windows系统,在Ubuntu系统上安装UHD驱动,首先需要安装相应的依赖,然后再安装UHD驱动。我安装Ubuntu系统版本为18.04、驱动版本为UHD3.15。

安装UHD驱动步骤

  1. 安装依赖。依赖的安装根据UHD版本的不同会有一些差异。不同版本安装的差异可参考链接:

    https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux

    这么多依赖安装过程中会出现安装失败的可能,一般原因为网速的问题,多试几次即可,也可考虑更换源,如果真的是因为网速的问题,更换源作用也不是很大。
    请添加图片描述

    sudo apt-get -y install git swig cmake doxygen build-essential libboost-all-dev libtool libusb-1.0-0 libusb-1.0-0-dev libudev-dev libncurses5-dev libfftw3-bin libfftw3-dev libfftw3-doc libcppunit-1.14-0 libcppunit-dev libcppunit-doc ncurses-bin cpufrequtils python-numpy python-numpy-doc python-numpy-dbg python-scipy python-docutils qt4-bin-dbg qt4-default qt4-doc libqt4-dev libqt4-dev-bin python-qt4 python-qt4-dbg python-qt4-dev python-qt4-doc python-qt4-doc libqwt6abi1 libfftw3-bin libfftw3-dev libfftw3-doc ncurses-bin libncurses5 libncurses5-dev libncurses5-dbg libfontconfig1-dev libxrender-dev libpulse-dev swig g++ automake autoconf libtool python-dev libfftw3-dev libcppunit-dev libboost-all-dev libusb-dev libusb-1.0-0-dev fort77 libsdl1.2-dev python-wxgtk3.0 git libqt4-dev python-numpy ccache python-opengl libgsl-dev python-cheetah python-mako python-lxml doxygen qt4-default qt4-dev-tools libusb-1.0-0-dev libqwtplot3d-qt5-dev pyqt4-dev-tools python-qwt5-qt4 cmake git wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 libzmq3-dev libzmq5 python-requests python-sphinx libcomedi-dev python-zmq libqwt-dev libqwt6abi1 python-six libgps-dev libgps23 gpsd gpsd-clients python-gps python-setuptools
    

    依赖安装完成后,重启系统。

  2. 接下来就开始安装UHD驱动,首先确保没有USRP插入,然后进入终端,以此执行以下命令。以下命令若执行不成功,则在命令前加sudo再运行。执行git命令不成功,按提示安装即可。

    cd $HOME
    mkdir workarea
    cd workarea
    
    git clone https://github.com/EttusResearch/uhd
    cd uhd
    
    git checkout v3.15.0.0
    
    cd host 
    mkdir build
    cd build
    cmake ../
    make
    make test
    sudo make install
    sudo ldconfig
    
  3. 如果上一步顺利完成,则开始配置环境变量。

    gedit $HOME/.bashrc
    # add the line below to the end of ./bashrc file:
    export LD_LIBRARY_PATH=/usr/local/lib
    
  4. 最后下载UHD FPGA Images。

    sudo uhd_images_downloader
    

    经过以上步骤,HUD驱动安装完成,接下来开始安装GNURadio。

GNURadio的安装

提示:在安装GNURadio之前,也需要相关的依赖。GNURadio安装的版本为3.8。

  1. 安装依赖。依赖安装根据GNURadio版本的不同会有一些差异。具体可参考以下链接:

    https://wiki.gnuradio.org/index.php/UbuntuInstall
    请添加图片描述

sudo apt install 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 python3-pyqt5 \
liblog4cpp5-dev libzmq3-dev python3-yaml python3-click python3-click-plugins \
python3-zmq python3-scipy
  1. 安装GNURadio软件,按照以下命令执行,若无法执行,前面可加sudo。

    cd workarea
    git clone --recursive https://github.com/gnuradio/gnuradio.git
    cd gnuradio
    git clone https://github.com/gnuradio/volk.git
    # 选择版本3.8
    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 -j4 will use 4 threads in the build
    make test
    sudo make install
    sudo ldconfig
    
  2. 设置环境变量,此步骤很重要,否则打不开应用。

    gedit $HOME/.bashrc
    # add the line below to the end of ./bashrc file:
    export PYTHONPATH=/usr/local/lib/python3/dist-packages:/usr/local/lib/python3.6/dist-packages:$PYTHONPATH
    export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH  
    
  3. 最后执行:

    sudo ldconfig
    

    即完成GNURadio的安装。

相关参考链接

[1] https://www.cnblogs.com/jsdy/p/11420189.html#_label1

[2] https://www.cnblogs.com/jsdy/p/12702246.html#_label1

[3] https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux

[4] https://wiki.gnuradio.org/index.php/UbuntuInstall

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐