|
|
|
### System update
|
|
|
|
https://ubuntu.com/download/server
|
|
|
|
```bash
|
|
|
|
sudo apt update
|
|
|
|
sudo apt upgrade
|
|
|
|
```
|
|
|
|
|
|
|
|
### Config
|
|
|
|
```bash
|
|
|
|
sudo timedatectl set-timezone CET
|
|
|
|
```
|
|
|
|
|
|
|
|
### X11 client
|
|
|
|
See https://help.ubuntu.com/community/ServerGUI
|
|
|
|
```bash
|
|
|
|
sudo apt install xauth x11-utils x11-xserver-utils
|
|
|
|
```
|
|
|
|
|
|
|
|
### Dependencies
|
|
|
|
```bash
|
|
|
|
sudo apt install autoconf automake build-essential ccache clang-format cmake \
|
|
|
|
cpufrequtils doxygen dpdk dpdk-dev ethtool fort77 g++ gir1.2-gtk-3.0 git \
|
|
|
|
gobject-introspection gpsd gpsd-clients inetutils-tools libad9361-dev \
|
|
|
|
libasound2-dev libboost-all-dev libcodec2-dev libcomedi-dev libcppunit-dev \
|
|
|
|
libfftw3-bin libfftw3-dev libfftw3-doc libfontconfig1-dev libgmp-dev \
|
|
|
|
libgps-dev libgsl-dev libgsm1-dev libiio-dev liblog4cpp5-dev libncurses5 \
|
|
|
|
libncurses5-dev libpulse-dev libqt5opengl5-dev libqwt-qt5-dev libsdl1.2-dev \
|
|
|
|
libsndfile1-dev libsoapysdr-dev libspdlog-dev libtool libudev-dev \
|
|
|
|
libusb-1.0-0 libusb-1.0-0-dev libusb-dev libxi-dev libxrender-dev \
|
|
|
|
libzmq3-dev libzmq5 ncurses-bin pybind11-dev python3-cheetah python3-click \
|
|
|
|
python3-click-plugins python3-click-threading python3-dev python3-docutils \
|
|
|
|
python3-gi python3-gi-cairo python3-gps python3-jsonschema python3-lxml \
|
|
|
|
python3-mako python3-matplotlib python3-numpy python3-opengl \
|
|
|
|
python3-packaging python3-pygccxml python3-pyqt5 python3-pyqtgraph \
|
|
|
|
python3-requests python3-ruamel.yaml python3-scipy python3-setuptools \
|
|
|
|
python3-six python3-sphinx python3-yaml python3-zmq soapysdr-tools wget
|
|
|
|
sudo apt install python3-pip
|
|
|
|
sudo pip3 install packaging gevent pyudev pyroute2 jsonschema pygccxml \
|
|
|
|
pybind11 pybind11[global]
|
|
|
|
```
|
|
|
|
|
|
|
|
### UHD 4.4.0.0
|
|
|
|
https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone https://github.com/EttusResearch/uhd
|
|
|
|
cd uhd
|
|
|
|
git checkout v4.4.0.0
|
|
|
|
|
|
|
|
cd host
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ..
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### VOLK 2.5.2 & GNU Radio 3.10.8.0+ custom fixes
|
|
|
|
https://wiki.gnuradio.org/index.php?title=LinuxInstall#From_Source
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone --recursive https://github.com/gnuradio/volk.git
|
|
|
|
cd volk
|
|
|
|
git checkout v2.5.2
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 ../
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone --recursive https://github.com/gnuradio/gnuradio
|
|
|
|
cd gnuradio
|
|
|
|
git checkout v3.10.8.0
|
|
|
|
|
|
|
|
# personal fixes
|
|
|
|
git cherry-pick --no-commit 17db2bb59f9564bcda9b4316cd1409e88d2d95ce
|
|
|
|
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ../
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
### Config
|
|
|
|
|
|
|
|
Add the following to `~/.bashrc`:
|
|
|
|
|
|
|
|
```shell
|
|
|
|
# UHD (USRP hardware driver)
|
|
|
|
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
|
|
|
|
export PYTHONPATH=/usr/local/lib/python3.10/site-packages:/usr/local/lib/python3.10/dist-packages:$PYTHONPATH
|
|
|
|
|
|
|
|
# Custom RFNoC OOT Module for UHD & GR
|
|
|
|
export UHD_MODULE_PATH=/usr/local/lib/librfnoc-beam_exciter_rfnoc.so:$UHD_MODULE_PATH
|
|
|
|
|
|
|
|
# Umask
|
|
|
|
umask u=rwx,g=rx,o=rx
|
|
|
|
|
|
|
|
# Welcome
|
|
|
|
me=$(tty | sed -e 's:/dev/::')
|
|
|
|
w -o | grep -wv ":0" | GREP_COLORS='ms=0' egrep --color=always ".*$me.*|" | GREP_COLORS='ms=38;5;9' egrep --color=always ".*pts.*|"
|
|
|
|
echo ''
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-----------
|
|
|
|
|
|
|
|
### System update
|
|
|
|
https://ubuntu.com/download/server
|
|
|
|
```bash
|
|
|
|
sudo apt update
|
|
|
|
sudo apt upgrade
|
|
|
|
```
|
|
|
|
|
|
|
|
### Config
|
|
|
|
```bash
|
|
|
|
sudo timedatectl set-timezone CET
|
|
|
|
```
|
|
|
|
|
|
|
|
### X11 client
|
|
|
|
See https://help.ubuntu.com/community/ServerGUI
|
|
|
|
```bash
|
|
|
|
sudo apt install xauth x11-utils x11-xserver-utils
|
|
|
|
```
|
|
|
|
|
|
|
|
### Dependencies
|
|
|
|
```bash
|
|
|
|
sudo apt install autoconf automake build-essential ccache clang-format cmake \
|
|
|
|
cpufrequtils doxygen dpdk dpdk-dev ethtool fort77 g++ gir1.2-gtk-3.0 git \
|
|
|
|
gobject-introspection gpsd gpsd-clients inetutils-tools libad9361-dev \
|
|
|
|
libasound2-dev libboost-all-dev libcodec2-dev libcomedi-dev libcppunit-dev \
|
|
|
|
libfftw3-bin libfftw3-dev libfftw3-doc libfontconfig1-dev libgmp-dev \
|
|
|
|
libgps-dev libgsl-dev libgsm1-dev libiio-dev liblog4cpp5-dev libncurses5 \
|
|
|
|
libncurses5-dev libpulse-dev libqt5opengl5-dev libqwt-qt5-dev libsdl1.2-dev \
|
|
|
|
libsndfile1-dev libsoapysdr-dev libspdlog-dev libtool libudev-dev \
|
|
|
|
libusb-1.0-0 libusb-1.0-0-dev libusb-dev libxi-dev libxrender-dev \
|
|
|
|
libzmq3-dev libzmq5 ncurses-bin pybind11-dev python3-cheetah python3-click \
|
|
|
|
python3-click-plugins python3-click-threading python3-dev python3-docutils \
|
|
|
|
python3-gi python3-gi-cairo python3-gps python3-jsonschema python3-lxml \
|
|
|
|
python3-mako python3-matplotlib python3-numpy python3-opengl \
|
|
|
|
python3-packaging python3-pygccxml python3-pyqt5 python3-pyqtgraph \
|
|
|
|
python3-requests python3-ruamel.yaml python3-scipy python3-setuptools \
|
|
|
|
python3-six python3-sphinx python3-yaml python3-zmq soapysdr-tools wget
|
|
|
|
sudo apt install python3-pip
|
|
|
|
sudo pip3 install packaging gevent pyudev pyroute2 jsonschema pygccxml \
|
|
|
|
pybind11 pybind11[global]
|
|
|
|
```
|
|
|
|
|
|
|
|
### UHD 4.6.0.0
|
|
|
|
https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone https://github.com/EttusResearch/uhd
|
|
|
|
cd uhd
|
|
|
|
git checkout v4.6.0.0
|
|
|
|
|
|
|
|
cd host
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ..
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
⚠ To be able to build FPGA images with the [pulse_counter_trigger](https://git.gsi.de/p.niedermayer/exciter/-/blob/dev/rfnoc-beam_exciter/blocks/pulse_counter_trigger.yml) RFNoC block yourself, you need to use a patched version of UHD instead. This is not required if you just want to use this block with a pre-build FPGA image.
|
|
|
|
```bash
|
|
|
|
cd ~
|
|
|
|
git clone https://github.com/EttusResearch/uhd
|
|
|
|
cd uhd
|
|
|
|
git checkout UHD-4.6-GPIO
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### VOLK 3.1.1 & GNU Radio 3.10.12.0
|
|
|
|
https://wiki.gnuradio.org/index.php?title=LinuxInstall#From_Source
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone --recursive https://github.com/gnuradio/volk.git
|
|
|
|
cd volk
|
|
|
|
git checkout v3.1.1
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/usr/bin/python3 ../
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
```shell
|
|
|
|
cd ~
|
|
|
|
git clone --recursive https://github.com/gnuradio/gnuradio
|
|
|
|
cd gnuradio
|
|
|
|
git checkout v3.10.12.0
|
|
|
|
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ../
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
### Config
|
|
|
|
|
|
|
|
Add the following to `~/.bashrc`:
|
|
|
|
|
|
|
|
```shell
|
|
|
|
# UHD (USRP hardware driver)
|
|
|
|
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
|
|
|
|
export PYTHONPATH=/usr/local/lib/python3.10/site-packages:/usr/local/lib/python3.10/dist-packages:$PYTHONPATH
|
|
|
|
|
|
|
|
# Custom RFNoC OOT Module for UHD & GR
|
|
|
|
export UHD_MODULE_PATH=/usr/local/lib/librfnoc-beam_exciter_rfnoc.so:$UHD_MODULE_PATH
|
|
|
|
|
|
|
|
# Umask
|
|
|
|
umask u=rwx,g=rx,o=rx
|
|
|
|
|
|
|
|
# Welcome
|
|
|
|
me=$(tty | sed -e 's:/dev/::')
|
|
|
|
w -o | grep -wv ":0" | GREP_COLORS='ms=0' egrep --color=always ".*$me.*|" | GREP_COLORS='ms=38;5;9' egrep --color=always ".*pts.*|"
|
|
|
|
echo ''
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-----------
|
|
|
|
|
|
|
|
Continue with [main installation](Installation) |
|
|
\ No newline at end of file |