Diese Anleitung bezieht sich auf ein frisch installiertes Debian Buster lite auf einem Raspberry Pi. Für den remote Login via SSH muss der SSH Server noch aktiviert werden:
sudo systemctl enable ssh
Danach sollte nach einem Reboot des Systems der Login mittels puTTY o.ä. möglich sein.
Zunächst einmal müssen alle Tools und Bibliotheken für die Übersetzung von Svxlink installiert werden:
sudo apt install build-essential git sudo apt install libasound2-dev g++ gcc make cmake groff gzip doxygen tar sudo apt install libsigc++-dev libsigc++-2.0-dev sudo apt install libspeex-dev libspeexdsp-dev libopus-dev sudo apt install libpopt-dev sudo apt install libasound2-dev libgcrypt20-dev libgsm1-dev sudo apt install librtlsdr-dev libjsoncpp-dev sudo apt install tcl-dev sudo apt install libcurl4-openssl-dev
Außerdem muss ein User svxlink angelegt werden, unter dem der Service nachher läuft. Das hat den Vorteil, dass nicht alles mit root Rechten laufen muss:
sudo useradd svxlink
Weiterhin muss der User den Gruppen audio und gpio hinzugefügt werden.
sudo usermod -a -G gpio svxlink sudo usermod -a -G audio svxlink
Dann wird das svxlink Repository von github geladen und vorbereitet, in dem ein Ordner angelegt wird, in dem die übersetzen Binaries landen:
git clone https://github.com/sm0svx/svxlink.git cd svxlink/src/ mkdir build cd build
Dann werden mittels cmake die notwendigen Makefiles für die Übersetzung erstellen. Die Optionen hier sind:
- CMAKE_INSTALL_PREFIX: Verzeichnis, in dem die Binaries bei der Installation landen
- SYSCONF_INSTALL_DIR: Hier liegen nach die Konfigurationsdateien
- LOCAL_STATE_DIR: Darin liegt später die Logdatei
- USE_QT: Damit wird bestimmt, ob die graphischen Tools wie Qtel auch übersetzt und installiert werden sollen. In diesem Fall brauchen wir das nicht.
- WITH_SYSTEMD: Bestimmt, ob die .service Daten für die Steuerung mittels systemd installiert werden sollen.
cmake -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc -DLOCAL_STATE_DIR=/var -DUSE_QT=NO -DWITH_SYSTEMD=yes ..
Jetzt werden Programm und Hilfedateien übersetzt:
make make doc
Und schließlich werden die Binaries im System installiert und die Verzeichnisse der Bibliotheken aktualisiert:
sudo make install sudo ldconfig
Der svxlink-Installationsprozess legt /lib/system/systemd/svxlink.service an, man kann den Dienst also dann „out of the box“ mit „systemctl start svxlink.service“ starten bzw. dann auch mit „systemctl stop svxlink.service“ beenden. Das svxlink-log findet man dann unter /var/log/svxlink. Vorerst sollte man zum Testen der Konfiguration svxlink noch händisch starten.
Quelle: https://wiki.n18.de