引言
首次安装补充部分可跳过,遇见问题可查看补充部分,先解决问题再继续安装。具体问题解释在文末参考链接的补充链接处。(补充为本文第二次编辑)
1.PC机环境准备
链接: Win7系统下安装虚拟机VMware,运行Linux系统
2.Ubuntu18.04更新系统软件
在联网条件下输入
sudo apt-get update
sudo apt-get upgrade
3.Ubuntu18.04安装依赖包
在联网条件下输入
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 libf ftw3-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
其他版本Ubuntu参见官网链接: 在Linux上构建和安装USRP开源工具链(UHD和GNU Radio)
4.安装UHD
以下操作所需条件:
1.在联网条件下
2.用Ubuntu18.04终端输入代码指令
3.下载完安装包后所有指令均在uhd目录下输入
- 补充依赖环境
安装UHD所需要的依赖环境
sudo apt-get install libboost-all-dev libusb-1.0-0-dev python-mako doxygen python-docutils cmake build-essential
- 下载UHD包
git clone https://github.com/EttusResearch/uhd
如果不能下载,参考 linux下无法登陆github官网解决方案,再次输入上述指令。
- 进入UHD包选择版本进行编译安装
cd uhd
git checkout release v
按Tab键显示出已有的release版本
选择安装版本,不推荐很低的版本,也不推荐最新的版本
git checkout v3.14.1.1
进入host文件夹,调用cmake来编译安装UHD
cd host
mkdir build
cd build
sudo cmake ../
sudo make
sudo make test
sudo make install
sudo ldconfig
补充问题:sudo:cmake:找不到命令
安装cmake,输入:
sudo apt-get update
sudo apt-get install cmake
补充问题:使用cmake报错No CMAKE_CXX_COMPILER could be found
安装gcc和g++编译环境,输入
sudo apt-get install build-essential
查看是否安装成功,依此输入
gcc --version
g++ --version
有版本号即成功,重新从sudo cmake …/指令开始
补充问题:could not find pythoninterp
未正确安装python解释器
https://wenku.csdn.net/answer/99cbfa383e1b725a3e84f7ef10970aba
补充问题:无boost
sudo apt-get update
sudo apt-get install libboost-all-dev
补充问题:Failed to load module canberra-gtk-module
输入
sudo apt-get install libcanberra-gtk-module
5.烧写UHD镜像
- 下载UHD镜像文件并烧写
sudo uhd_images_downloader
UHD驱动已经安装完毕,网线连USRP可查看设备信息
uhd_find_devices
烧写镜像
uhd_image_loader --args=“type=x300,,addr=192.168.10.2,reset”
- 镜像版本错误
如果出现如下输出,证明镜像版本不对
[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.14.1.HEAD-0-g0347a6d8
No UHD Devices Found
输入指令查看
uhd/host/utils$ uhd_usrp_probe
如果输出如下错误提示
[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.14.1.HEAD-0-g0347a6d8
[INFO] [X300] X300 initialization sequence...
Error: RuntimeError: Expected FPGA compatibility number 35, but got 38:
The FPGA image on your device is not compatible with this host code build.
Download the appropriate FPGA images for this version of UHD.
Please run:
"/usr/local/lib/uhd/utils/uhd_images_downloader.py"
Then burn a new image to the on-board flash storage of your
USRP X3xx device using the image loader utility. Use this command:
"/usr/local/bin/uhd_image_loader" --args="type=x300,addr=192.168.10.2"
For more information, refer to the UHD manual:
http://files.ettus.com/manual/page_usrp_x3x0.html#x3x0_flash
根据上述错误输入如下代码
/usr/local/bin/uhd_image_loader --args="type=x300,addr=192.168.10.2"
其中type=x300是设备型号,addr=192.168.10.2是设备IP,根据上述错误提示修改。
如下输出即正确
[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.14.1.HEAD-0-g0347a6d8
Unit: USRP X310 (31082BF, 192.168.10.3)
FPGA Image: /usr/local/share/uhd/images/usrp_x310_fpga_HG.bit
-- Initializing FPGA loading...successful.
-- Loading HG FPGA image: 100% (121/121 sectors)
-- Finalizing image load...successful.
Power-cycle the USRP X310 to use the new image.
输入如下指令看设备信息
uhd_usrp_probe
uhd_find_devices
输出如下指令则证明镜像正确
[INFO] [UHD] linux; GNU C++ version 7.5.0; Boost_106501; UHD_3.14.1.HEAD-0-g0347a6d8
--------------------------------------------------
-- UHD Device 0
--------------------------------------------------
Device Address:
serial: 31082BF
addr: 192.168.10.3
fpga: HG
name:
product: X310
type: x300
6.安装GNU Radio
以下操作所需条件:
1.在联网条件下
2.用Ubuntu18.04终端输入代码指令
- 下载GNU Radio包
- 3.下载完安装包后所有指令均在gnuradio目录下输入
git clone --recursive https://github.com/gnuradio/gnuradio
如果不能下载,参考 linux fatal: git clone git://github.com/…下载失败的解决方案,再次输入上述指令。
如果还不能下载,参考 linux下无法登陆github官网解决方案,再次输入上述指令。
- 进入GNU Radio包选择版本进行编译安装
cd gnuradio/
git checkout v3.7.13.4
git submodule update --init --recursive
mkdir build
cd build
sudo cmake ../
sudo make
sudo make test
sudo make install
sudo ldconfig
此时,GNU Radio 应该已经安装并可以使用了。
- 打开gnuradio
gnuradio-companion
7.参考链接
链接1: ubuntu18.04 安装UHD+GNU Radio教程
链接2: Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux
补充链接: Ubuntu 18.04安装UHD和GNURadio问题集