libacars¶
Shared library that decodes ACARS application-layer messages
- Version recorded: 2.2.1
- Categories:
aircraft - Upstream: https://github.com/szpajder/libacars
What it does¶
Decodes the application layer that rides inside ACARS, VDL Mode 2 and HFDL messages. The radio decoders recover the text of a message; libacars is what turns that text into structured data — CPDLC clearances, ADS-C position reports, MIAM file transfers, OHMA payloads — and pretty-prints the XML and JSON some of them carry.
Why you would want it¶
You do not install it for itself. It is the shared dependency of acarsdec, dumpvdl2 and dumphfdl, and without it those decoders print raw message bodies instead of decoded content. Installing it first is what makes the rest of the aeronautical cluster useful rather than merely functional.
Before it will work¶
None beyond a compiler and CMake. It is a library with no radio hardware requirement of its own — the decoders that link it are where an SDR is needed.
How it installs¶
- git (cmake) — https://github.com/szpajder/libacars at
v2.2.1 - build dependencies:
build-essential,cmake,zlib1g-dev,libxml2-dev,libjansson-dev - Upstream's configuration summary prints which of the three were detected. If a target ever drops one, the build still succeeds and the library quietly loses a capability — the failure mode this project exists to make visible, so it is worth checking the summary rather than the exit status (D-031).
Files its install rule leaves under the prefix, checked after the run and never copied or removed by the engine:
lib/libacars-2.so.2lib/libacars-2.solib/pkgconfig/libacars-2.pc
Known problems¶
zlib, libxml2 and jansson are each optional at build time and each silently disables a feature when missing: no zlib means compressed MIAM and OHMA messages are left undecoded, no libxml2 means XML is not formatted, no jansson means OHMA JSON is not decoded at all. The build prints a configuration summary saying which were found; a decoder that appears to be receiving nothing useful is worth checking against that summary before blaming the antenna. All three are listed as build dependencies here so the question does not arise.
Keeping it current¶
- probe: github tags
- strategy: rebuild
- Tagged releases, infrequent. Last commit on the default branch was 2025-11-02 (verified 2026-08-28 from the default branch's head, not GitHub's updated_at — D-032). Maintained rather than busy.
Where to get help with the software itself¶
GitHub issues at https://github.com/szpajder/libacars/issues. The same author maintains dumpvdl2 and dumphfdl, so a decoding question is usually best asked against the decoder rather than the library.
Source: catalog/packages/libacars.yaml