Supported targets and hosts#
A single Pigweed Toolchain installation targets all of the architectures below. The table lists the Clang toolchains that Pigweed provides out of the box. Custom toolchains for other architectures and CPUs can be assembled from the same distribution.
Target architectures#
Target |
Bazel toolchain |
GN toolchain scope |
|---|---|---|
Arm Cortex-M0, M0+ (Armv6-M) |
|
|
Arm Cortex-M3 (Armv7-M) |
|
|
Arm Cortex-M4, M4F (Armv7E-M) |
|
|
Arm Cortex-M7, M7F (Armv7E-M) |
Not provided |
|
Arm Cortex-M33, M33F (Armv8-M) |
|
|
Arm Cortex-M55, M55F (Armv8.1-M) |
|
|
Arm Cortex-A35 (AArch64) |
|
Not provided |
RISC-V 32-bit ( |
|
Not provided |
Host (Linux, macOS) |
|
|
Bazel targets live in pw_toolchain/arm_clang/BUILD.bazel,
pw_toolchain/riscv_clang/BUILD.bazel, and
pw_toolchain/host_clang/BUILD.bazel. GN scopes live in
pw_toolchain/arm_clang/toolchains.gni and
pw_toolchain/host_clang/toolchains.gni. Each GN scope is available in
debug, size_optimized, and speed_optimized variants.
Development hosts#
Host |
Notes |
|---|---|
Linux (x86-64, arm64) |
Fully supported. |
Windows (x86-64) |
Contains some limitations around user-side licensing. |