FlightAware Discussions

Mlat-client fails to build from source code on Debian Bullseye RPi armhf

Machine & OS Details

pi@rpi2-20210823:~$ cat /proc/device-tree/model
Raspberry Pi 2 Model B Rev 1.1

pi@rpi2-20210823:~$ uname -a
Linux rpi2-20210823 5.10.0-8-armmp #1 SMP Debian 5.10.46-4 (2021-08-03) armv7l GNU/Linux

pi@rpi2-20210823:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"

Attempt to Build Mlat-Client from Source-Code - Failed

pi@rpi2-20210823:~$ sudo apt-get update
pi@rpi2-20210823:~$ sudo apt-get install build-essential debhelper python3-dev
... ... ...
The following NEW packages will be installed:
  build-essential debhelper python3 python3-dev python3-distutils python3-lib2to3
... ... ...
pi@rpi2-20210823:~$ git clone https://github.com/mutability/mlat-client.git
pi@rpi2-20210823:~$ cd mlat-client 
pi@rpi2-20210823:~$ sudo dpkg-buildpackage -b -uc 
... ... ...
dh: error: unable to load addon python3: Can't locate Debian/Debhelper/Sequence/python3.pm in @INC (you may need to install the Debian::Debhelper::Sequence::python3 module) (@INC contains: /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.32.1 /usr/local/share/perl/5.32.1 /usr/lib/arm-linux-gnueabihf/perl5/5.32 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.32 /usr/share/perl/5.32 /usr/local/lib/site_perl) at (eval 4) line 1.
BEGIN failed--compilation aborted at (eval 4) line 1.

make: *** [debian/rules:36: clean] Error 255
dpkg-buildpackage: error: debian/rules clean subprocess returned exit status 2

make: *** [debian/rules:36: clean] Error 255
dpkg-buildpackage: error: debian/rules clean subprocess returned exit status 2


I wanted to install mlat-client on RPi to activate Radarbox24’s MLAT.
Their repsitory does not yet has mlat-client package for Bullseye.

As I have built & installed piaware ver 6.0~dev from source code, it contains both fa-mlat-client (installed as piaware-helper) and mlat-client (not installed). I tried following hack, and it worked. Radarbox24’s mlat has started working.

pi@rpi2-20210823:~$ ls piaware_builder/package-buster/mlat-client

COPYING    _modes.h  fa-mlat-client  mlat-client      modes_reader.c        setup.py
README.md  build     flightaware     modes_crc.c      run-flake8.sh         tools
_modes.c   debian    mlat            modes_message.c  setup-mlat-client.py  tox.ini

pi@rpi2-20210823:~$ sudo cp piaware_builder/package-buster/mlat-client/mlat-client /usr/bin/

pi@rpi2-20210823:~$ mlat-client

usage: mlat-client [-h] [--input-type {auto,dump1090,beast,radarcape_12mhz,radarcape_gps,radarcape,sbs,avrmlat}]
                   --input-connect INPUT_CONNECT [--results RESULTS] [--no-anon-results] [--no-modeac-results]
                   --lat LAT --lon LON --alt ALT [--privacy] --user USER [--server SERVER] [--no-udp]
mlat-client: error: the following arguments are required: --input-connect, --lat, --lon, --alt, --user

pi@rpi2-20210823:~$ sudo systemctl restart rbfeeder