|
|
|
### System update
|
|
|
|
https://ubuntu.com/download/server
|
|
|
|
```bash
|
|
|
|
sudo apt update
|
|
|
|
sudo apt upgrade
|
|
|
|
```
|
|
|
|
|
|
|
|
### X11 client
|
|
|
|
See https://help.ubuntu.com/community/ServerGUI
|
|
|
|
```bash
|
|
|
|
sudo apt install xauth x11-utils
|
|
|
|
```
|
|
|
|
|
|
|
|
### Dependencies
|
|
|
|
```bash
|
|
|
|
sudo apt install autoconf automake build-essential ccache cmake cpufrequtils doxygen dpdk dpdk-dev ethtool \
|
|
|
|
fort77 g++ gir1.2-gtk-3.0 git gobject-introspection gpsd gpsd-clients inetutils-tools libasound2-dev libboost-all-dev \
|
|
|
|
libcomedi-dev libcppunit-dev libfftw3-bin libfftw3-dev libfftw3-doc libfontconfig1-dev libgmp-dev libgps-dev libgsl-dev \
|
|
|
|
liblog4cpp5-dev libncurses5 libncurses5-dev libpulse-dev libqt5opengl5-dev libqwt-qt5-dev libsdl1.2-dev libtool libudev-dev \
|
|
|
|
libusb-1.0-0 libusb-1.0-0-dev libusb-dev libxi-dev libxrender-dev libzmq3-dev libzmq5 ncurses-bin python3-cheetah \
|
|
|
|
python3-click python3-click-plugins python3-click-threading python3-dev python3-docutils python3-gi python3-gi-cairo \
|
|
|
|
python3-gps python3-lxml python3-mako python3-numpy python3-opengl python3-pyqt5 python3-requests \
|
|
|
|
python3-scipy python3-setuptools python3-six python3-sphinx python3-yaml python3-zmq python3-ruamel.yaml swig wget \
|
|
|
|
libiio-dev libad9361-dev libspdlog-dev python3-packaging soapysdr-module-all libsndfile1-dev clang-format
|
|
|
|
sudo apt install python3-pip
|
|
|
|
sudo pip3 install packaging gevent pyudev pyroute2 jsonschema pygccxml pybind11 pybind11[global]
|
|
|
|
```
|
|
|
|
|
|
|
|
### UHD 4.4.0.0
|
|
|
|
```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
|
|
|
|
|
|
|
|
# ----- TODO -----
|
|
|
|
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
```
|
|
|
|
|
|
|
|
Add the following to `~/.bashrc`:
|
|
|
|
|
|
|
|
```shell
|
|
|
|
# UHD (USRP hardware driver)
|
|
|
|
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
|
|
|
|
# /usr/lib /usr/local/lib
|
|
|
|
export PYTHONPATH=/usr/local/lib/python3.10/site-packages:/usr/local/lib/python3.10/dist-packages:$PYTHONPATH
|
|
|
|
```
|
|
|
|
|
|
|
|
### GNU Radio
|
|
|
|
|
|
|
|
```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, might be included in newer version
|
|
|
|
git cherry pick --no-commit 17db2bb59f9564bcda9b4316cd1409e88d2d95ce
|
|
|
|
|
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
cmake ../
|
|
|
|
make
|
|
|
|
make test
|
|
|
|
|
|
|
|
sudo make install
|
|
|
|
sudo ldconfig
|
|
|
|
``` |
|
|
|
\ No newline at end of file |