This is an old revision of the document!
Table of Contents
Dire Wolf
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
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
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
From the docs, might not affect Raspberry Pi OS (I'm not a Dire Wolf user):
Troubleshooting tip: When running direwolf, you might see a message like this:
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. One solution is to define an environment variable:
export LD_LIBRARY_PATH=/usr/local/lib
You will probably want to put this in your ~/.profile, or similar, file that gets run when you log in