> For the complete documentation index, see [llms.txt](https://docs.xplatform.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xplatform.com/release-notes/3.16/3.16.41/native-3.16.87.md).

# Native 3.16.87

<mark style="color:green;">Release Date: Monday, August 24, 2026</mark>

## Compatibility Notes

The following issues have compatibility implications:

* [NATIVE-3 - Native libraries resolve sibling libraries via RUNPATH $ORIGIN without requiring LD\_LIBRARY\_PATH](#native-3)

## Change Summary

* [Improvement](#improvement)
  * [NATIVE-3 - Native libraries resolve sibling libraries via RUNPATH $ORIGIN without requiring LD\_LIBRARY\_PATH](#native-3)

## Improvements <a href="#improvement" id="improvement"></a>

### NATIVE-3 <a href="#native-3" id="native-3"></a>

<mark style="color:orange;">Native libraries resolve sibling libraries via RUNPATH $ORIGIN without requiring LD\_LIBRARY\_PATH</mark>

Prior to this release, the X Platform native libraries referenced one another by bare name, so deployments had to set `LD_LIBRARY_PATH` to the directory holding them. Setting `java.library.path` alone was not sufficient, because that JVM property governs only the first library loaded and not its transitive dependencies.

The Linux native libraries now locate their siblings relative to their own installed location. Pointing `java.library.path` at the directory is sufficient and `LD_LIBRARY_PATH` no longer needs to be set.

This change is backward compatible and requires no action on upgrade. Existing deployments that set `LD_LIBRARY_PATH` continue to resolve libraries exactly as they did before.

See [Native Libraries](/talon/operating-applications/deployment/native-libraries.md).

{% hint style="warning" %}
**Compatibility Notes**

**Areas of Impact**: None

The Linux native libraries are now linked with a `RUNPATH` of `$ORIGIN` and no longer rely on `LD_LIBRARY_PATH` to resolve one another. `RUNPATH` is `DT_RUNPATH`, which the dynamic loader searches after `LD_LIBRARY_PATH`, so a deployment that sets `LD_LIBRARY_PATH` today resolves libraries in exactly the order it always has. No action is required on upgrade.
{% endhint %}
