ABILINT(1)

okay so this is the abilint(1) page and I’m already obsessed πŸ’…βœ¨. It’s manual section 1, bestie, and it’s all about validating an abigail ABI representation. Let’s get into it.

πŸ’– NAME πŸ’–

abilint β€” validate an abigail ABI representation.

abilint parses the native XML representation of an ABI as emitted by abidw. Once it has parsed the XML representation of the ABI, abilint builds an in-memory model from it. It then tries to save it back to an XML form, to standard output. If that read-write operation succeeds, chances are the input XML ABI representation is meaningful. ✨

Lowkey important: the main intent of this tool is to help debugging issues in the underlying Libabigail library. That’s the actual main character energy here πŸ‘‘

Also note: abilint can read an ELF input file, build the in-memory model for its ABI, and serialize that model back into XML to standard output. In that case, the ELF input file must be accompanied with its debug information in the DWARF format. No DWARF, no XML-serialization party 🫢


πŸš€ INVOCATION πŸš€

Run it like this, bestie:

abilint [options] [<abi-file1>]

πŸ’… OPTIONS πŸ’…

  • --abidiff β€” perform an ABI comparison between the internal representation against the input ABIXML and the internal representation of the file saved to disk and read back into memory. The result of the comparison should be the empty set, unless Libabigail has a bug. Like, if it’s not empty, that’s a bug alert 🚨
  • --annotate β€” annotate the ABIXML output with comments above most elements. The comments are made of the pretty-printed form of types, declaration or even ELF symbols. The purpose is to make the ABIXML output more human-readable for debugging or documenting purposes. Cute and useful πŸ’–
  • --ctf β€” extract ABI information from CTF debug information, if present in the given object.
  • --debug-info-dir <path> β€” when reading an ELF input file which debug information is split out into a separate file, this option tells abilint where to find that separate debug information file. Note that path must point to the root directory under which the debug information is arranged in a tree-like manner. Under Red Hat based systems, that directory is usually <root>/usr/lib/debug. Note also that this option is not mandatory for split debug information installed by your system’s package manager because then abidiff knows where to find it.
  • --diff β€” for XML inputs, perform a text diff between the input and the memory model saved back to disk. This can help to spot issues in the handling of the XML format by the underlying Libabigail library. iykyk πŸ”
  • --header-file | --hf <header-file-path> β€” specifies where to find one of the public headers of the abi file that the tool has to consider. The tool will thus filter out types that are not defined in public headers.
  • --headers-dir | --hd <headers-directory-path-1> β€” specifies where to find the public headers of the first shared library that the tool has to consider. The tool will thus filter out types that are not defined in public headers.
  • --help β€” display a short help message and exits.
  • --load-all-types β€” analyze all the types coming from the ABIXML input, including those that are not reachable from exported declarations.
  • --noout β€” do not display anything on standard output. The return code of the command is the only way to know if the command succeeded. Silent but lowkey powerful 🀫
  • --suppressions | suppr <path-to-suppression-specifications-file> β€” use a suppression specification file located at path-to-suppression-specifications-file. Note that this option can appear multiple times on the command line. In that case, all of the provided suppression specification files are taken into account. ABI artifacts matched by the suppression specifications are suppressed from the output of this tool.
  • --stdin | -- β€” read the input content from standard input.
  • --tu β€” expect the input XML to represent a single translation unit.
  • –verbose β€” shows verbose messages about internal stuff. This is used to debug the tool and its underlying library. (Yes, that’s the en dash as printed, bestie β€” keeping it exact πŸ’…)
  • –version | -v β€” display the version of the program and exit.

🌟 AUTHOR 🌟

Dodji Seketeli β€” the author, no cap πŸ’–

2014-2026, Red Hat, Inc. β€” periodt.


made with πŸ’– by Libabigail, dated Oct 08, 2026 β€” now go validate that ABI, bestie 🫢✨

πŸ“¦ where this page comes from