为了用上自己搭好的GNURadio流图去产生数据集,因此需要跑下RML2016作者的数据集生成代码,弄懂步骤。另外因为在社区看到windows对GnuRadio的使用限制,无奈使用Linux系统(ubuntu就是Linux系统的一种)
import gnuradio遇到以下报错问题
ModuleNotFoundError: No module named ‘gnuradio‘
①gnuradio没安装
②gr-mediatools没装好,这个包装好才能导入gnuradio模块
本文会不断完善,尽量以最少的可行步骤解决问题
最近更新:2021.5.24
更新内容:删除了不必要的安装步骤
因为windows对使用gnuradio的限制,还是下了虚拟机VMware。然后下个Linux系统镜像就可以了。
sudo apt-get install python
sudo apt-get install python-pip
sudo apt-get update
如果失败(下面这种访问受限的情况)
进行换源
在命令行中输入:
sudo gedit /etc/apt/sources.list
在上面打开的文件开头添加(中科大的源)
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
再来一次
sudo apt-get update
然后
sudo apt-get install gnuradio
在安装之前,先在终端输入:
sudo apt-get install cmake
sudo apt-get install libavcodec-dev libavformat-dev
swig安装
apt install swig
这个安装包包含了接收机等模块的库。
如果只是要引入import gnuradio,那么请直接看3.2部分,这个模块可以不装。
如果是为了跑RML2016a作者的代码,那么这个环节是需要的,因为人家使用到了这部分包。
步骤如下
首先在linux的home目录下进行解压
继续输入下面命令,进入该目录(可以一起全部黏贴的,不要一条条复制黏贴)。
cd gr-mapper-master
mkdir build
cd build
cmake ../
make -k
sudo make install
sudo ldconfig
(import gnuradio的包所需)
步骤一模一样,将下载的文件解压到文件夹然后开始装
cd gr-mediatools-master
mkdir build
cd build
cmake ../
make -k
sudo make install
sudo ldconfig
如果遇到报错
在gr-mediatools-master解压包的lib目录下找到
mediatools_audiosource_impl.cc文件,解决方案来源于该博主(前人种树后人乘凉,感激不尽,时间成本大大减少)。。
找到
d_frame = avcodec_alloc_frame();
替换为
d_frame = av_frame_alloc();
替换完后,记得再来一次前面的安装命令。
到此为止,顺利的话结束了(下面是安装过程的小截图)。
现在,我们已经获得了该库(经过试验mapper不装也可以导入gnuradio的)
终端进入python环境测试下
OK!如果上述都安装了,mapper和gnuradio的包都将会成功导入
终端写代码可能不是很方便,我这里用jupyter notebook作为编辑器
安装方式如下
sudo python -m pip install --upgrade --force pip
sudo pip install setuptools==33.1.1
sudo pip install jupyter
如果出现报错
ERROR: Cannot uninstall ‘pyzmq’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
解决方案:
sudo pip install --ignore-installed pyzmq
接着在终端重设密码即可使用
python
from notebook.auth import passwd
passwd()
$ pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git
$ pybombs recipes add ettus-pybombs git+https://github.com/EttusResearch/ettus-pybombs.git
sudo apt-get install pkg-config
sudo apt-get install texlive-latex-recommended
(开源接收机)
sudo apt-get install gqrx-sdr
sudo pybombs install hackrf rtl-sdr gr-osmosdr osmo-sdr
WINSCP传输所需包
sudo apt install net-tools
sudo apt-get install openssh-server
开启远程服务所需命令
service sshd start
查看ip命令
ifconfig
一些需要管理员权限的命令所需(首次设置密码)
sudo passwd root
进入root权限
su root
https://blog.csdn.net/qq_45103492/article/details/108449519
https://blog.csdn.net/u011441044/article/details/99442178
https://blog.csdn.net/universe_1207/article/details/108589944