I describe how to compile WSJTX, version 2.5.1, for a Raspberry Pi 4(00) running under Ubuntu 21.10 for ARM processors. This has the advantage that a Raspberry Pi 4(00) can be used as a shack PC, since Ubuntu is a full fledged desktop operating system, and that the Raspberry Pi only draws about 5W of power, which makes it suitable for continuous running, e.g. for reporting to pskreporter.info.
I have an old shack PC running Ubuntu Desktop, which is big and draws about 40W of power. But since a few years Ubuntu Desktop is also available for the Raspberry Pi, including Raspberry Pi 4 and 400, which only draws about 5W of power, with a similar performance of the old PC, such that it can run 24/7 for pskreporting. Compared to Raspbian, Ubuntu also has the advantage that Ubuntu is a full desktop OS, including screen lock and audio support and controls.
But a direct installation of WSJTX using the ARM binary for Raspbian seems not to work because of missing dependencies (and no installation candidates for them). Hence a solution is the compilation of the source code. This is usually quite tricky and lengthy, so here is a concise step by step description for setting up Ubuntu and compiling WSJTX.
First:
- Fix “freezing” bug in Ubuntu 21.10 for ARM:
https://bugs.launchpad.net/ubuntu/+source/linux-raspi/+bug/1946368
change the following line in /boot/firmware/config.txt:
1
dtoverlay=vc4-kms-v3d
To the following:
1
dtoverlay=vc4-fkms-v3d In other words, to use the "fake" KMS overlay (fkms) instead of the "full" KMS overlay (kms).
-Fix lost ttyUSB in Ubuntu 21.10 for ARM: https://bugs.launchpad.net/ubuntu/+source/linux-raspi/+bug/1947723
1
sudo apt install linux-modules-extra-raspi
-Download the latest source code for wsjtx from https://physics.princeton.edu/pulsar/k1jt/wsjtx.html And unpack it e.g. with
1
tar -zxvf wsjtx*.gz
-Instructions are based on http://www.kk5jy.net/wsjtx-build/ -In a terminal install the needed libraries:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
sudo apt-get install -y cmake automake libtool asciidoctor asciidoc gfortran qtmultimedia5-dev libqt5serialport5-dev qttools5-dev qttools5-dev-tools libboost-all-dev libfftw3-dev libreadline-dev libusb-1.0-0-dev libudev-dev portaudio19-dev -Change directory to wjtx source directory:
cd wsjtx*/src -Remove perhaps existing older hamlib
sudo apt-get remove libhamlib* -Unpack hamlib:
tar -zxvf hamlib*.tar.gz
cd hamlib*
./configure --prefix=/usr/local --enable-static
make
sudo make install
sudo ldconfig
cd .. -Then compile wsjtx:
tar -zxvf wsjtx.tgz
mkdir build
cd build
cmake ../wsjtx
make
sudo make install
cd ~ -Start wsjtx with:
wsjtx &
Now, wsjtx should start up normally and it can be set up.
Many greetings, 73, Gerald, DL5BBN