Files
FlatLaf/flatlaf-natives/flatlaf-natives-linux
Karl Tauber 91f19bf94c Native Libraries:
- Linux: added dumps
- macOS: replaced deprecated Gradle `exec`
2025-01-18 16:53:30 +01:00
..
2025-01-18 16:53:30 +01:00

FlatLaf Linux Native Library

This sub-project contains the source code for the FlatLaf Linux native library.

The native library can be built only on Linux and requires a C++ compiler.

The native library is available for following CPU architectures: x86_64 (or amd64) and arm64 (or aarch64).

To be able to build FlatLaf on any platform, and without C++ compiler, the pre-built native libraries are checked into Git at flatlaf-core/src/main/resources/com/formdev/flatlaf/natives/.

The native libraries were built on a GitHub server with the help of GitHub Actions. See: Native Libraries workflow. Then the produced Artifacts ZIP was downloaded and the native library checked into Git.

Development

To build the library on Linux, some packages needs to be installed:

  • build-essential - GCC and development tools
  • libxt-dev - X11 toolkit development headers
  • g++-aarch64-linux-gnu - GNU C++ compiler for the arm64 architecture (only on x86_64 Linux for cross-compiling for arm64 architecture)

Ubuntu

sudo apt update
sudo apt install build-essential libxt-dev

Only on x86_64 Linux for cross-compiling for arm64 architecture:

sudo apt install g++-aarch64-linux-gnu

CentOS

sudo yum install libXt-devel