Nerves Toolchain: armv6_nerves_linux_gnueabihf

Copy Markdown View Source

Hex version

This is a Nerves toolchain package.

If you're just trying to use Nerves (i.e., not adding support for a new hardware device), you don't need to use this directly. In fact, even if you're developing for a new board, we may already have a cross-compiler available.

This project's purpose is to contain the information for hex.pm so that Nerves cross-compilers can be referenced in mix. See nerves-project/toolchains for the scripts used to generate the actual cross-compiler.

Using this toolchain in a Nerves system

Add this toolchain to your Nerves system project's deps in mix.exs:

{:nerves_toolchain_armv6_nerves_linux_gnueabihf, "~> <toolchain version>", runtime: false}

Then update nerves_defconfig to use the release artifact for this toolchain. The easiest way is to copy the external toolchain settings from this package's defconfig. In addition to pointing BR2_TOOLCHAIN_EXTERNAL_URL at the release archive for your host and setting the custom prefix, make sure the kernel headers, libc, and language/runtime options match:

BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/nerves-project/toolchains/releases/download/<tag>/<artifact>"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="armv6-nerves-linux-gnueabihf"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_0=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
# BR2_TOOLCHAIN_EXTERNAL_INET_RPC is not set
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_TOOLCHAIN_EXTERNAL_FORTRAN=y
BR2_TOOLCHAIN_EXTERNAL_OPENMP=y

Included tool versions and licenses

These versions come from the resolved crosstool-NG configuration for this toolchain. License values are upstream SPDX license identifiers for the included components.

ComponentVersionLicense
GCC15.3.0GPL-3.0-or-later
binutils2.46.1GPL-3.0-or-later
Linux headers6.0.12GPL-2.0-only WITH Linux-syscall-note
glibc2.43LGPL-2.1-or-later
GDB17.2GPL-3.0-or-later
expat2.7.1MIT
gettext0.26GPL-3.0-or-later
GMP6.3.0LGPL-3.0-or-later OR GPL-2.0-or-later
ISL0.27MIT
libiconv1.18LGPL-2.1-or-later
MPC1.3.1LGPL-3.0-or-later
MPFR4.2.2LGPL-3.0-or-later
ncurses6.5MIT
zlib1.3.1Zlib
bison3.8.2GPL-3.0-or-later
m41.4.20GPL-3.0-or-later