72 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # 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 libgfortran3 libusb-1.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
 | 
