Install on Linux¶
Platform tools for NSX on Linux. These are steps 1–3 of
Install and Setup — when you're done, return there to install
the CLI and run nsx doctor. Examples are shown for Debian/Ubuntu and
Fedora; adapt the package manager for other distributions.
1. System Prerequisites¶
NSX generates CMake projects that cross-compile for Arm Cortex-M targets. Install these host tools first:
| Tool | Version | Purpose |
|---|---|---|
| Python | 3.10+ | Runs the NSX CLI and module resolver |
| uv | latest | Fast Python dependency management |
| CMake | 3.24+ | Build-system generator |
| Ninja | any | Parallel build backend |
| Git | any | Fetches module sources from their upstream repos |
2. Compiler Toolchain¶
GCC (the Arm GNU Toolchain) is the default and builds every example. You only need one toolchain to get started. Distro packages are often several years behind, so the official download gives you a current compiler:
- Get the
arm-none-eabiLinux build from the Arm GNU Toolchain downloads. - Extract it to a stable location, e.g.
/opt/arm-gnu-toolchain. - Add its
bin/to yourPATH:
Quick alternative via the package manager
Faster to install, but may be older than 13.x:
Verify the compiler is reachable:
Optional Toolchains¶
GCC is all most users need. NSX also supports two alternates — select either
with --toolchain armclang or --toolchain atfe on any build command.
Arm Compiler for Embedded (armclang) — 6.22+
A licensed commercial compiler (Arm Compiler 6). Install it from Arm,
ensure armclang is on your PATH, and NSX detects it automatically. No
environment variable is required.
Arm Toolchain for Embedded (ATfE) — experimental, 22.1+
ATfE is Arm's free LLVM-based bare-metal toolchain (clang + lld + picolibc with a newlib overlay).
- Download the Linux build from the Arm Toolchain for Embedded releases.
- Extract it to a stable location, e.g.
/opt/ATfE-22.1.0. - Also extract the matching
ATfE-newlib-overlayon top of that same directory — NSX (andnsx doctor) require the bundlednewlib.cfg. - Point
ATFE_ROOTat the install directory (ATfE does not need to be onPATH— NSX invokes its binaries by absolute path):
See Toolchain Support for build-flag and linker details.
3. Debug Probe (Optional)¶
A SEGGER J-Link is required to flash firmware (nsx flash) and stream live
SWO output (nsx view). The Apollo510 EVB includes an onboard J-Link.
Download the J-Link Software and Documentation Pack (.deb or .rpm) from
SEGGER and install it.
Next Steps¶
Platform tools are in place — return to
Install and Setup to install the nsx CLI
and verify with nsx doctor.