====== Dire Wolf ====== Official website: https://github.com/wb2osz/direwolf ===== Debian, Raspberry Pi OS, Ubuntu ===== Dire Wolf packages for Debian and some Debian-derived Linux distributions are available from the [[https://online-amateur-radio-club-m0ouk.github.io/oarc-packages/|OARC Package Repository]]. ===== Windows ===== Binaries built from dev branch, with IL2P: 1.7.0-11468f2 for Windows x64 (April 2023): https://drive.google.com/uc?id=1PpiR1e2i-IJGI5ubVICj9ylO9Gay5AxO&export=download 1.7.0-c5ad945 for Windows x64 (23 July 2023): https://drive.google.com/uc?export=download&id=1bgNcgtwSK_Ro0qq0BzN2yn_8aUaoPgpG ===== Standalone builds for Raspberry Pi OS ===== Note: the packaged versions above are likely to be more recent. 1.7.0-75ccf18 for Raspberry Pi OS 64 bit: https://drive.google.com/uc?id=1vW2CMlN9uaiJ48-ZfcVdtaDH3XaIHlek&export=download 1.7.0-75ccf18 for Raspberry Pi OS 32 bit: https://drive.google.com/uc?id=1nDW03W588TYzpgHhoV5u40feaQjAW-qQ&export=download ===== Building Dire Wolf from source on Windows (optional) ===== You might want to build Dire Wolf yourself to get binaries for the dev branch, which contains support for IL2P. Excerpt from user guide follows. NB this does not include Hamlib support - someone needs to work out how to enable Hamlib support for Windows. If you manage it, please come and edit these instructions. It is built using Cygwin, which provides a Unix-like development environment. The MinGW compiler is a special version of gcc which generates native code for the Windows operating system. Install Cygwin 64 from https://cygwin.com/ During installation pick these additional packages: * git * bin-utils * make * cmake * mingw64-x86_64-gcc-core * mingw64-x86_64-gcc-g++ If you want to generate code for a 32 bit target (i.e. Windows XP), also install these: * mingw64-i686gcc-core * mingw64-i686gcc-g++ Open a Cygwin command window by double clicking this desktop shortcut. Edit your ~/.bash_profile file and add the following: export CC=/usr/bin/x86_64-w64-mingw32-gcc export CXX=/usr/bin/x86_64-w64-mingw32-g++ export AR=/usr/bin/x86_64-w64-mingw32-ar export WINDRES=/usr/bin/x86_64-w64-mingw32-windres To build the 32 bit version, use these instead: export CC=/usr/bin/i686-w64-mingw32-gcc export CXX=/usr/bin/i686-w64-mingw32-g++ export AR=/usr/bin/i686-w64-mingw32-ar export WINDRES=/usr/bin/i686-w64-mingw32-windres These commands will be run automatically when a new command window is opened. To apply them to the current command window: source ~/.bash_profile Type this to obtain the source code: git clone http://github.com/wb2osz/direwolf cd direwolf This is the most recent stable version. If you want the most recent development version, with all of the latest new features and bug fixes, type: git checkout dev Build it. Notice the double period at the end of the cmake command. mkdir build cd buile cmake -DUNITTEST=1 .. make -j4 It would be a good idea to run the self-tests. make test The result should be several new executable files, in the build/src directory including "direwolf.exe" and "decode_aprs.exe". If you want to bundle up the application, so it can be run on a different computer, create a zip file with: make package Skip sections 5 (Linux) and 6 (Mac OS X) and proceed to section 7 for Basic Operation. ===== Building Dire Wolf from source on Linux (optional) ===== See the user guide, but here are some distilled steps for Raspberry Pi OS (tested on 64 bit build) NB don't do this on a Pi that's got hamlib or Dire Wolf already installed from distro repositories. Get dependencies: sudo apt update && sudo apt install git cmake libasound2-dev libudev-dev gpsd libgps-dev automake libtool texinfo (Optional) Build and install hamlib: cd ~ git clone https://github.com/Hamlib/Hamlib.git cd Hamlib ./bootstrap ./configure make sudo make install Build and install Dire Wolf (dev branch, 1.7, with IL2P support) cd ~ git clone https://www.github.com/wb2osz/direwolf.git cd direwolf git checkout dev mkdir build && cd build cmake -DUNITTEST=1 .. make -j4 make test sudo make install sudo ln -s /usr/local/lib/libhamlib.so.4 /usr/lib/libhamlib.so.4 It works! $ direwolf -t 0 Dire Wolf DEVELOPMENT version 1.7 G (Jul 23 2023) Includes optional support for: gpsd hamlib cm108-ptt NB the "ln -s" above fixes the following: direwolf: error while loading shared libraries: libhamlib.so.4: cannot open shared object file: No such file or directory The reason is that libhamlib.so is in /usr/local/lib rather than the usual /usr/lib and the particular operating system does not look in the former.