# JS8Call JS8Call is built atop the Qt framework and can be compiled on Linux, Windows, and MacOS. ## Compiling for Linux ### Get the Hamlib Source mkdir ~/hamlib-prefix cd ~/hamlib-prefix git clone https://github.com/Hamlib/Hamlib.git src ### Get the JS8Call Source mkdir ~/js8call-prefix cd ~/js8call-prefix git clone https://bitbucket.org/widefido/js8call.git src ### Get the Dependencies Most Debian-based distributions make it very easy to install the required dependencies. Other distributions may require a little more effort. JS8Call depends on: * Qt5 * FFTW3 * Hamlib #### 18.04 LTS: sudo apt install build-essential git automake cmake clang gfortran libfftw3-dev git libgfortran5 libusb-1.0-0-dev autoconf libtool texinfo qt5-default qtmultimedia5-dev libqt5multimedia5-plugins libqt5serialport5-dev libudev-dev pkg-config #### 20.04 LTS: 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 ### 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 make install-strip ### Compile JS8Call cd ~/js8call-prefix/src mkdir ../build cd ../build cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix -D CMAKE_INSTALL_PREFIX=~/js8call-prefix ../src make ### Package JS8Call (.deb, .rpm, etc) cd ~/js8call-prefix/build cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix -D CMAKE_INSTALL_PREFIX=~/js8call-prefix ../src make package ## Compiling for Windows TODO ## Compiling for MacOS TODO