10 Ubuntu
Tom Russo edited this page 2026-02-21 11:46:43 -07:00

Installing Xastir on Ubuntu, Raspberry Pi OS and other Debian Variants

These are the system-specific installation instructions for Ubuntu 24.04 LTS. The Xastir team tests on this platform through Github Actions every time any change is made to the code, and these are the precise packages the action installs each time.

We have confirmed that the install instructions here are also correct for the latest Rasbperry Pi OS based on Debian 13 ("Trixie").

Important

It has been reported that Xastir performs very poorly on Raspberry Pi when Wayland is enabled. It has been found to be very slow starting up and in all user interactions. This has been confirmed by developers on a Raspberry Pi 3b running Trixie.

For the purposes of using Xastir on the Raspberry Pi, you are much better off running the X desktop environment instead of Wayland, which can be configured using raspi-config in the Advanced options. Xastir is much more responsive in that case.

They are probably valid for other releases of Ubuntu, and are very likely close for other Debian variants.

As we get more user input on the accuracy of that statement, we'll update.

There is an Xastir package in the package manager

But at least for the Ubuntu LTS version 24.04 it's very old, version 2.2.0. Raspberry Pi OS (Debian 13 "Trixie") also has version 2.2.0.

You are better off building from source.

Getting dependent libraries

To install packages on Ubuntu you use "apt install".

The following command should be sufficient to install all packages needed for a complete build of Xastir on Ubuntu systems, plus those necessary to set up and use AX.25 networking. Note that it also loads some packages of X fonts that are expected by Xastir but not part of a normal Ubuntu install.

sudo apt install build-essential autoconf automake xorg-dev libmotif-dev graphicsmagick libgraphicsmagick1-dev  libcurl4-openssl-dev libpcre2-dev libdb-dev shapelib libshp-dev libxpm-dev libproj-dev festival festival-dev libgeotiff-dev gpsman gpsmanshp libcjson1 libcjson-dev xfonts-100dpi xfonts-75dpi libax25-dev ax25-apps ax25-tools git

Configure requires an extra argument

Ubuntu's libgeotiff package places the headers in a place that Xastir's configure won't find them. So you need to give it a hint.

/path/to/Xastir/configure CPPFLAGS="-I/usr/include/geotiff"

Everything else is per the general building guidance

The remaining steps of building Xastir are exactly as provided in Installing Xastir.

Useful tools

While the list of packages above is enough to get Xastir built with all optional features, there are a few additional packages that can come in handy if you want to roll your own maps.

  • geotiff-bin: This is a package of applications that would normally be installed with the geotiff library if you built it from source, but the package management system has split out from the libraries and development headers as a separate package
  • gdal-bin: This will cause gdal libraries to be installed as well, and provides tools that are part of the GDAL package. These are advanced tools for manipulating map data, and are referred to often in our [[advanced map topics|Advanced-Map-Topics]] page.

You don't need these packages unless you're doing a lot of work rolling your own maps.

How were these instructions tested?

The Xastir team has an automated testing setup on Github that checks the Xastir build on several different systems. Ubuntu 24.04 is one of them. This process launches a vanilla Ubuntu 24.04 virtual machine, executes the apt install command above, then configures and builds Xastir from source.

This process is run every time any change is made to the Xastir code.

We also checked it by hand

The apt install command was verified to be correct on Ubuntu 24.04 and Raspberry Pi OS "Trixie" (the latest as of January 2026) on fresh installs of Ubuntu 24.04 in a virtual machine and on a fresh install of Raspberry Pi OS on a Raspberry Pi 3b.

Some of the packages we list may already be installed

We provided this set of apt install instructions to make sure everything we need is installed. We have found that some of them are already installed by default on this system, so including them in the instructions just means apt will skip over them.