sudo apt install build-essential git automake make cmake clang gfortran libfftw3-dev git libgfortran-10-dev libusb-1.0-0-dev autoconf libtool texinfo qt5-default qtmultimedia5-dev libqt5multimedia5-plugins libqt5serialport5-dev libudev-dev pkg-config libusb-1.0-0-dev libboost-dev libboost-log-dev qttools5-dev-tools asciidoctor asciidoc libboost-regex-dev -y
Ubuntu: apt install qttools5 asciidoctor asciidoc -y
Debian: apt install qttools5-dev qttools5-dev-tools libgfortran-8-dev
mkdir -p ~/hamlib-prefix
cd ~/hamlib-prefix
git clone https://github.com/Hamlib/Hamlib.git src
### Get the JS8Call Source
mkdir -p ~/js8call-prefix
cd ~/js8call-prefix
git clone https://bitbucket.org/widefido/js8call.git src
### Compile Hamlib
cd ~/hamlib-prefix/src
./bootstrap
mkdir ../build
cd ../build
../src/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 4 && make -j 4 install-strip
### Compile JS8Call
cd ~/js8call-prefix/src
# If you are using the hamlib 3.x from Debian/Ubuntu
echo "add_compile_definitions(JS8_USE_HAMLIB_THREE)" >> CMakeLists.txt
mkdir ../build
cd ../build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix -D CMAKE_INSTALL_PREFIX=~/js8call-prefix ../src
make -j 4 && make -j 4 package
### Compile WSJT-X
mkdir -p ~/wsjtx-prefix/build
cd ~/wsjtx-prefix
git clone https://git.code.sf.net/p/wsjt/wsjtx srccd ~/wsjtx-prefix/build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix \
-D CMAKE_INSTALL_PREFIX=~/wsjtx-prefix ../src
make -j 4 && make package
or
cmake --build .
cmake --build . --target install