Svxlink selber kompilieren

SVXLink Installation

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.

Juergen Clemenz

Autor: Juergen Clemenz

Geboren in Recklinghausen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.