User Tools

Site Tools


wsjtz

This is an old revision of the document!


WSJT-Z

Building WSJTX from Source on Ubuntu 22.04
There a multiple steps for Building WSJTX from source (ie from the SourceForge Git Repository) that can be summarised as follows:

Install Build tools
Install Build time dependencies
Checkout HamLib
Build modified HamLib
Checkout WSJTX
Build WSJTX

Installing the build tools

If you've build C++ and FORTRAN applications before, you can likely omit this step. Running it if you have already got everything installed won't hurt either.

sudo apt-get install -y build-essential gfortran autoconf automake libtool cmake git qttools5-dev

Installing Build time dependencies

sudo apt-get install -y asciidoctor libfftw3-dev qtdeclarative5-dev texinfo libqt5multimedia5 \
libqt5multimedia5-plugins qtmultimedia5-dev libusb-1.0.0-dev libqt5serialport5-dev asciidoc \
libboost-dev libboost-log-dev libboost-regex-dev libudev-dev

Checking out and building a custom HamLib

According to the official WSJTX instructions a custom version of HamLib is required for WSJTX as it \\contains changes which are not merged into the upstream package. This is likely to change when the two \\code bases are brought together, but for now it is required. To avoid clashing with other installed \\version of HamLib, we create a static version off on it's own prefix rather than installing it into the \\system library path.

mkdir hamlib 
cd hamlib
git clone https://github.com/Hamlib/Hamlib.git src
cd src 
./bootstrap
mkdir build
cd build
../configure --prefix=$HOME/hamlib-prefix --disable-shared --enable-static --without-cxx-binding --disable-winradio CFLAGS="-g -O2 -fdata-sections -ffunction-sections"  LDFLAGS="-Wl,--gc-sections"
make -j${NUMPROC}
make install-strip
cd ../../

Checkout and build WSJTX

Once the custom version of hamlib has been build and installed into ~/hamlib-prefix we can build WSJTX. The following snippet installs the WSJTX libaries into ~/wsjtx/output, this was to keep it separate from the package manager delivered version. However, this can be easily changed for a different directory by modifying the INSTALL_PREFIX parameter.
Download a wsjt-z version from the WSJT-Z repo

unzip wsjtx-<version>.xip
cd wsjtx
mkdir build 
cd build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix -D CMAKE_INSTALL_PREFIX=/usr/local ../
cmake --build . -- -j4 
sudo cmake --build . --target install

Dev tools take a lot of space, let's clean some

sudo apt remove build-essential gfortran autoconf automake libtool cmake git qttools5-dev \
asciidoctor libfftw3-dev qtdeclarative5-dev texinfo libqt5multimedia5 \
libqt5multimedia5-plugins qtmultimedia5-dev libusb-1.0.0-dev libqt5serialport5-dev asciidoc \
libboost-dev libboost-log-dev libboost-regex-dev libudev-dev

Since some of it is needed for running the apps we need to install runtime versions of the dev libs:

wsjtz.1770372401.txt.gz · Last modified: by 172.21.0.1