---
name: "elftc_version"
section: "3"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/elftc_version"
---

# elftc\_version(3)

return a project-wide version identifier string

## NAME

**elftc\_version** – return a project-wide version identifier string

## LIBRARY

library “libelftc”

## SYNOPSIS

**#include \<libelftc.h\>**

*const* *char* *\**\

**elftc\_version**(*void*);

## DESCRIPTION

Function **elftc\_version**() returns a project-wide identifier string that encodes the source revision of the project source tree.

The returned identifier has four space-separated fields:

- *Project-Name*

  This is always “elftoolchain”.

- *Project-Branch*

  The branch name for the project source tree.

- *Build-OS*

  The operating system that the tool chain was compiled for.

- *Version-Number*

  A tree-wide version number extracted from the version control system in use.

## RETURN VALUES

Function **elftc\_program\_version**() returns a pointer to an internal character buffer.

## EXAMPLES

To retrieve and print the current toolchain version identifier, use:

```
#include <sys/types.h>
#include <libelftc.h>
(void) printf("%s\n", elftc_version());
```

On the HEAD branch of the project's sources, when checked out using Subversion and compiled on a NetBSD host, this would print:

“elftoolchain HEAD NetBSD svn:*REVINFO*”

where *REVINFO* would be the current revision information for the project source tree.

## ERRORS

Function **elftc\_program\_version**() always succeeds.
