离线安装Ubuntu虚拟机和GNURadio

关于离线安装GNURadio官方已经有教程了,安装过程中根据自己实际操作记录下一些坑:
https://kb.ettus.com/Building_and_Installing_UHD_and_GNU_Radio_in_an_Offline_Environment

安装虚拟机VMware和操作系统

VMware是15.0.4版本,网上有一堆教程就不说了,安装完随便找一个激活码即可。
安装Ununtu 16.04.6的教程也有很多,不过安装的时候也出现了一些问题,总结一下:

  • 中间有个新建虚拟机向导环节,此时如果直接选择中间那一项,安装过程会直接将VMwareTools安装,但是这种安装方法结束后是无法选择语言的,也不能播放音乐,感觉有很多弊端。所以还是选择第三项。
    离线安装Ubuntu虚拟机和GNURadio_第1张图片
    可参考以下链接:
    https://blog.csdn.net/wang_624/article/details/90347274
  • 安装完之后要进行VMwareTools的安装,参考教程:
    -https://blog.csdn.net/yuanxiang01/article/details/78787823
    记得安装完之后重启才能正常复制粘贴。
  • 安装完随便粘贴一个音频文件到Ubuntu中测试声音,发现没有声音,需要进行以下设置才行:
    离线安装Ubuntu虚拟机和GNURadio_第2张图片

安装GNURadio和UHD版本

操作系统:Ununtu 16.04.6
UHD新版本:3.14.0.HEAD-0-g6875d061(查看指令:uhd_usrp_probe --version)
GNURadio新版本:3.7.13.5(查看指令:gnuradio-config-info -v)

安装依赖包

首先安装依赖包,找一个上网机,最好也是新装的ubuntu系统,通过以下指令:

sudo apt-get update

将系统的软件包进行更新,这也是进行下面步骤的前提。
sudo apt-get install下载好的软件存放位置:/var/cache/apt/archives
如果有变动,则用aptitude download XXXX命令,此命令不需要 root 权限,下载的软件包就放在当前目录下。我在Ubuntu 16.04系统上,则可以新建一个文件夹并用以下命令:

aptitude download 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.13-0v5 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-core 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 libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4 cmake git-core wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 libzmq-dev libzmq1 python-requests python-sphinx libcomedi-dev python-zmq python-setuptools

这样依赖包deb文件就会下载到当前文件夹下,下载完毕后可以将所有deb文件拷贝至非上网机上,所有deb包都在/var/cache/apt/archives中。
但是为了保险起见,最好在上网机上完成一次依赖包的安装,确保所有的包都能安装,注意这一步一定要确定所有的软件包都已被正确安装,不然一会在离线机上安装的时候会出现各种各样的错误。

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.13-0v5 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-core 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 libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4 cmake git-core wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 libzmq-dev libzmq1 python-requests python-sphinx libcomedi-dev python-zmq python-setuptools

在离线机上进入deb包存放文件夹打开终端,用如下指令进行安装:

sudo dpkg -i *.deb

此指令将会把文件夹中所有的deb文件都安装,安装完之后一定要检查是否所有deb包都已经安装成功,如果无法安装一般是缺少相应的依赖包或者版本冲突,此时最好查找相应的依赖包进行安装或者卸载冲突的依赖包,这也是强调最好用新的系统进行安装的原因,比较纯净。一开始忽略了部分deb包的安装,结果UHD安装没问题,但在gnuradio安装的时候(make的时候)总是报错,还得回过头来找问题,即使解决了重新安装gnuradio的时候还是报错,因为有些配置已经固定了,所以不要侥幸。

UHD安装

同在我前面文章说过的一样,在地址为:http://files.ettus.com/binaries/uhd_stable/src/
下载的UHD3.14,在cmake …/的时候总是会报错。此处可下载 https://github.com/EttusResearch/uhd中UHD安装包拷贝至非上网机上,在uhd/host文件夹下打开终端,输入以下指令:

mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig

由于我在这里没有装USRP,所以UHD安装先到此结束。

GNURadio安装

下载地址:https://github.com/gnuradio/gnuradio,可以选择安装版本,我的是v3.7.13.5,下载完之后拷贝至非上网机上。
离线安装Ubuntu虚拟机和GNURadio_第3张图片
解压后在本文件夹下打开终端,可以进行安装:

mkdir build
cd build
cmake ../
make
sudo make install
sudo ldconfig

与UHD安装步骤一样,此安装过程较长。
但要注意的是:通过上述连接下载的安装包volk文件夹内可能没有文件,需要到GitHub上单独下载(就在原目录),否则会导致cmake …/的时候出现错误提示。至此就完成了安装。

测试

可通过以下指令查看UHD版本:uhd_usrp_probe --version
可通过以下指令查看Gnuradio版本:gnuradio-config-info -v
另外可用例程进行测试,参考我另外一篇文章:
https://blog.csdn.net/fengshao1370/article/details/104296088

你可能感兴趣的:(GNURadio,通信)