最近刚刚发布了Ubuntu20.04,尝试用PyBOMBS安装UHD和GNURadio但是失败了,报错未解决。不过尝试了几种方法,还是安装成功了,把经验记录一下。
首先发布了新版本,最重要的就是依赖包的更新,由于Ubuntu 20.04停止了Python 2的支持,那么GNURadio的版本我这里也选择了支持Python 3的3.8.1.0,如果是想直接移植项目的同学可以忽略。下面是我参考的两个网址,如果嫌麻烦也可以根据我下面步骤,也可以一样安装。
https://wiki.gnuradio.org/index.php/UbuntuInstall#Focal_Fossa_.2820.04.29
https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux
1. 更新软件包列表,更新系统软件
sudo apt-get update
sudo apt-get upgrade
2. 安装依赖包 (此代码仅适用于Ubuntu 20.04,如果其他版本可以参考本文第一条链接)
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
3. 安装UHD
选择你想要安装的目录,推荐在Home下新建一个文件夹,相应的代码如下:
cd $HOME
mkdir workarea
cd workarea
下载UHD包并进入目录准备安装:
git clone https://github.com/EttusResearch/uhd
cd uhd
查找并选择UHD版本
git checkout v3.
#按Tab键,显示出已有的release版本
git checkout v3.15.0.0
#选择要安装的版本,我这里选择安装的是3.15.0.0
在目录中建立一个名为host的文件夹,用来调用cmake并build UHD
cd host
mkdir build
cd build
cmake ../
make
看看make的结果
make test
接下来安装UHD,默认将安装在/usr/local/lib文件夹下。由于该文件夹的权限,需要将其作为根目录运行。
sudo make install
更新库
sudo ldconfig
最后,确保定义了LD_LIBRARY_PATH环境变量,并且已经包含安装UHD的文件夹。简单的方法,可以在$HOME/.bashrc文件的末尾添加如下内容
export LD_LIBRARY_PATH=/usr/local/lib
4. 下载UHD镜像文件并烧写镜像文件
sudo uhd_images_downloader
5. 下载GNU Radio源文件并编译安装
首先进入安装目录
cd $HOME/workarea
克隆GNURadio
git clone --recursive https://github.com/gnuradio/gnuradio
进入文件夹
cd gnuradio
选择GNURadio版本
git checkout v3.
#连续按下Tap键查看可安装版本
git checkout v3.8.1.0
#这里是我选择的版本
更新一些小模块
git submodule update --init --recursive
安装
mkdir build
cd build
cmake ../
make
然后依次输入以下命令
make test
sudo make install
sudo ldconfig
6. 安装完成,检查以下安装信息
gnuradio-config-info --version
gnuradio-config-info --prefix
gnuradio-config-info --enabled-components
启动
gnuradio-companion
可以体验深色模式下的GNURadio了
7. 可能遇到的一些小问题 (持续更新,欢迎补充)
1)如果输入gnuradio-companion并没有启动,并且出现PYTHONPATH环境变量报错,可以尝试在$HOME/.bashrc文件下添加如下内容
export PYTHONPATH=/usr/local/lib/python2.7/dist-packages
2) 如果尝试连接USRP出现USB权限错误,解决如下
cd $HOME/workarea/uhd/host/utils
sudo cp uhd-usrp.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
Peace!
网友评论