Сборка и установка GNURadio из GIT под Ubuntu и Debian

в 19:41, , рубрики: debian 9, Git, gnuradio, open source, RTL-SDR, RTL2832U, Ubuntu 16.04, ubuntu 18.04, Разработка систем связи, установка

Добрый всем вечер, день или еще!

Недавно столкнулся с программой GNURadio, а конкретнее с его установкой и настройкой.
Конечно можно установить через «apt install ....» или как советует автор GNURadio через PyBOMBS, но в первом случае, нет гарантии, что это будет последняя версия, во втором возникали ошибки при установке. Но в любом случае, мне хотелось всегда последнюю версию (хотя последнее, не всегда значит лучше!).


И так я расскажу, как установить и собрать GNURadio и модули для DVB-T USB приемника (у меня обычный приемник с али за 500 руб.)

Приемник DVB-T USB RTL2832U

image

И так поехали!

Советы по установке:

1. Пишу по шагам, не пропускать ни одного шага, идем сверху вниз
2. Я скачивал всё в домашнюю папку! (cd ~)
3. Где нужен root, там я пишу sudo
4. Проверяйте, что пишется в консоли после каждого шага (вдруг у Вас ошибка)
5. Процесс не быстрый! Нужно терпения и машинку по быстрее. Где-то час у вас уйдет на всё.

Далее

Весь процесс я поделил на 6 частей (установок)

1. Инсталлируем GNURadio — процесс долгий, сборка идет долго. Так, что терпения вам
2. Инсталлируем библиотеку RTL-SDR (DVB-T RTL2832U) для приемника
3. Инсталлируем библиотеку LibRtlSdr (Software to turn the RTL2832U into an SDR)
4. Инсталлируем библиотеку GR-OsmoSdr
5. Инсталлируем библиотеку Liquid DSP
6. Заблокировать загрузку стандартных файлов для нашего DVB-T RTL2832U

Часть 1. Инсталлируем GNURadio

Для начала устанавливаем необходимые пакеты (строка длинная)

sudo apt-get install git python-pip libboost-all-dev swig libcppunit-dev python-gtk2-dev libfftw3-dev libqwt-dev pyqt4-dev-tools python-wxgtk3.0 python-lxml alsa-utils doxygen cmake libusb-1.0-0-dev libgsl-dev osspd

и далее строчку за строчкой

cd ~
sudo pip install --upgrade pip
sudo pip install mako numpy Cheetah3
git clone https://github.com/gnuradio/gnuradio.git
cd gnuradio
git clone https://github.com/gnuradio/volk.git
mkdir build
cd build
cmake ../
make
make test

после make test посмотрите, чтобы не было ошибок!
если нет, то далее…

sudo make install
sudo ldconfig

на этом мы установили GNURadio. Его можно уже запустить, но нам надо еще собрать и подключить наш DVB-T приемник.

Часть 2. Инсталлируем библиотеку RTL-SDR (DVB-T RTL2832U)

cd ~
git clone https://github.com/osmocom/rtl-sdr.git
cd rtl-sdr/
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo ldconfig

Тут не должно быть проблем. И библиотека RTL-SDR установлена.

Часть 3. Инсталлируем библиотеку LibRtlSdr

sudo apt-get install libusb-1.0-0-dev
cd ~
git clone https://github.com/steve-m/librtlsdr.git
cd librtlsdr
mkdir build
cd build/
cmake ../
make
sudo make install
sudo ldconfig

Сделано. Идем далее

Часть 4. Инсталлируем библиотеку GR-OsmoSdr

cd ~
git clone git://git.osmocom.org/gr-osmosdr
cd gr-osmosdr/
mkdir build
cd build/
cmake ../
make
sudo make install
sudo ldconfig

Сделано. Идем далее

Часть 5. Инсталлируем библиотеку Liquid DSP

sudo apt-get install automake
cd ~
git clone https://github.com/jgaeddert/liquid-dsp.git
cd liquid-dsp
./bootstrap.sh
./configure
make
sudo make install
sudo ldconfig

Сделано. Идем далее

Часть 6. Заблокировать загрузку стандартных файлов для нашего DVB-T RTL2832U
Открываем (или создаем) файл "/etc/modprobe.d/blacklist-dvb.conf"
и туда вставляем строчки

blacklist dvb_usb_rtl28xxu
blacklist rtl2832
blacklist rtl2830

и ПЕРЕЗАПУСКАЕМ систему или проще говоря:

sudo reboot

Ну вот, вроде процесс закончен и мы можем запустить и проверить наш GNURadio
для этого набираем в консоли:

gnuradio-companion
Запустили GNURadio

image
Пример FM Radio для GNURadio

Ну и сам ролик установки на Ubuntu 18.04

Во время установки и проб, были ошибки связанных со звуковой картой (Проблема здесь в использовании программой старой звуковой подсистемы OSS) и второе прописать в блоке «osmosdr_source_0» строку «driver=rtlsdr,rtl=0». В остальном вроде проблем не было. Но у вас не должно быть проблем, т.к. я уже указал нужные вам пакеты в «sudo apt install...»

Я еще дополнительно устанавливал себе блоки-модули для LoRa, GSM и прочее.

Различных модулей под GNURadio много.
Полный список таких плагинов-блоков для GNURadio по ссылкам:

https://github.com/gnuradio/gr-recipes
https://github.com/gnuradio/gr-etcetera

Надеюсь кому-то это интересно, будут вопросы — спрашивайте.

Автор: Sergey Abaev

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js