Most of Linux distributions have Xastir in their repositories , yet most of the time it is not the latest version or it is seriously outdated. Let’s see how we can build the latest version from sources.
Unfortunately Xastir’s documentation is quite vague on how to compile a working version of the software. They only mention a list of libraries which are needed and you have to go figure out which packages provide these libs. The steps highlighted here were all done on Raspbian but should work on any Debian derived distribution. At the end you should have a working Xastir , including ability to use AX25 stack and online maps like OpenstreetMap.
First things first, make sure we are up to date and install the necessary tools to retrieve the source code and compile.
sudo apt update
sudo apt -y upgrade
sudo apt install build-essential git autoconf automake
Code language: Bash (bash)
Now get the required libs to build Xastir. Most of this was found by try and fail and looking at the source code, not all libs might be actually required but with different variants of the libs I decided to include them all.
sudo apt install xorg-dev libdb-dev
sudo apt install libmotif-dev
sudo apt install libgeotiff-dev libtiff5-dev libgraphicsmagick1-dev libgraphicsmagick++1-dev
sudo apt install libproj-dev libshp-dev libpcre3-dev libice-dev libmotif-dev
sudo apt install wget libcurl4-openssl-dev
Now fetch the source code
cd ~
git clone https://github.com/Xastir/Xastir.git
Code language: Bash (bash)
Change to freshly clone Xastir source code repository and prepare the build:
cd Xastir
./bootstrap.sh
mkdir -p build
cd build
../configure
Code language: Bash (bash)
The configure script will perform a lot of checks and at the end the output shall look something like this. I stil have not figured out how to include geotiff support, despite libgeotiff-dev being installed.
===========================================
xastir 2.1.9 has been configured to use the following
options and external libraries:
MINIMUM OPTIONS:
ShapeLib (Vector maps) .................... : yes
RECOMMENDED OPTIONS:
Xpm / Snapshots ........................... : yes
GraphicsMagick/ImageMagick (Raster maps) .. : yes (GraphicsMagick)
pcre (Shapefile customization) ............ : yes
Berkeley DB map caching-Raster map speedups : yes
internet map retrieval .................... : yes (libcurl)
FOR THE ADVENTUROUS:
AX25 (Linux Kernel I/O Drivers) ........... : yes
libproj (USGS Topos & Aerial Photos) ...... : yes
GeoTiff (USGS Topos & Aerial Photos) ...... : no
Festival (Text-to-speech) ................. : no
GPSMan/gpsmanshp (GPS downloads) .......... : no
xastir will be installed in /usr/local/bin.
Type 'make' to build Xastir (Use 'gmake' instead on some systems).
Code language: Bash (bash)
Now start the build process
make
If you are on a 4 core CPU like rpi 3 or 4 you can speed up the build process by using more CPU cores in parallel.
make -j3
When done with build, install Xastir
sudo make install
sudo chmod 4555 /usr/local/bin/xastir
Now you can enjoy xastir by starting it
xastir
To update the source code, from within the Xastir directory: pull the latest code from GitHub and start at ../configure step. Typically This would look like this.
git pull -p
cd build
../configure
make
sudo make install
sudo chmod 4555 /usr/local/bin/xastir