Zig's level of support for various targets is broadly categorized into four tiers with Tier 1 being the highest. The goal is for Tier 1 targets to have zero disabled tests - this will become a requirement for post-1.0.0 Zig releases.
This issue serves as an overview of the current status of Zig's target support. Each target is categorized based on its current tier.
Tier 1
Criteria
- All non-experimental language features are known to work correctly.
- The compiler can generate machine code for this target without relying on LLVM.
- The CI machines automatically run the module tests for this target on every push.
Targets
Linux
x86_64-linux- https://github.com/ziglang/zig/issues/23079
Tier 2
Criteria
- The standard library's cross-platform abstractions have implementations for this target.
- This target has debug info capabilities and therefore produces stack traces on failed assertions and crashes.
- libc is available for this target even when cross-compiling.
- The CI machines automatically build the module tests for this target on every push.
Targets
Darwin
aarch64-maccatalyst- https://github.com/ziglang/zig/issues/25932aarch64-macos- https://github.com/ziglang/zig/issues/23078x86_64-maccatalyst- https://github.com/ziglang/zig/issues/25933x86_64-macos- https://github.com/ziglang/zig/issues/4897
FreeBSD
aarch64-freebsd- https://github.com/ziglang/zig/issues/3939arm-freebsd- https://github.com/ziglang/zig/issues/23675powerpc64(le)-freebsd- https://github.com/ziglang/zig/issues/23678riscv64-freebsd- https://github.com/ziglang/zig/issues/23676x86_64-freebsd- https://github.com/ziglang/zig/issues/1759
Linux
aarch64(_be)-linux- https://github.com/ziglang/zig/issues/2443arm(eb)-linux- https://github.com/ziglang/zig/issues/3174hexagon-linux- https://github.com/ziglang/zig/issues/21652loongarch64-linux- https://github.com/ziglang/zig/issues/21646mips(el)-linux- https://github.com/ziglang/zig/issues/3345mips64(el)-linux- https://github.com/ziglang/zig/issues/21647powerpc-linux- https://github.com/ziglang/zig/issues/21649powerpc64(le)-linux- https://github.com/ziglang/zig/issues/21651riscv32-linux- https://github.com/ziglang/zig/issues/21648riscv64-linux- https://github.com/ziglang/zig/issues/4456s390x-linux- https://github.com/ziglang/zig/issues/21402thumb(eb)-linux- https://github.com/ziglang/zig/issues/23672x86-linux- https://github.com/ziglang/zig/issues/1929
NetBSD
aarch64(_be)-netbsd- https://github.com/ziglang/zig/issues/23084arm(eb)-netbsd- https://github.com/ziglang/zig/issues/23763mips(el)-netbsd- https://github.com/ziglang/zig/issues/23764powerpc-netbsd- https://github.com/ziglang/zig/issues/23766x86-netbsd- https://github.com/ziglang/zig/issues/23772x86_64-netbsd- https://github.com/ziglang/zig/issues/23082
OpenBSD
aarch64-openbsd- https://github.com/ziglang/zig/issues/23085arm-openbsd- https://github.com/ziglang/zig/issues/23773mips64(el)-openbsd- https://github.com/ziglang/zig/issues/23774powerpc-openbsd- https://github.com/ziglang/zig/issues/23775powerpc64-openbsd- https://github.com/ziglang/zig/issues/23776riscv64-openbsd- https://github.com/ziglang/zig/issues/23777x86-openbsd- https://github.com/ziglang/zig/issues/23778x86_64-openbsd- https://github.com/ziglang/zig/issues/2016
WASI
wasm32-wasi- https://github.com/ziglang/zig/issues/23091
Windows
aarch64-windows- https://github.com/ziglang/zig/issues/16665x86-windows- https://github.com/ziglang/zig/issues/537x86_64-windows- https://github.com/ziglang/zig/issues/23080
Tier 3
Criteria
- The compiler can generate machine code for this target by relying on an external backend such as LLVM.
- The linker can produce object files, libraries, and executables for this target.
Targets
Darwin
aarch64-ios- https://github.com/ziglang/zig/issues/23782aarch64-tvos- https://github.com/ziglang/zig/issues/23784aarch64-visionos- https://github.com/ziglang/zig/issues/23786aarch64-watchos- https://github.com/ziglang/zig/issues/23788aarch64-watchos-ilp32- https://github.com/ziglang/zig/issues/25732
DragonFly BSD
x86_64-dragonfly- https://github.com/ziglang/zig/issues/7149
FreeBSD
loongarch64-freebsd- https://github.com/ziglang/zig/issues/24877
Fuchsia
aarch64-fuchsia- https://github.com/ziglang/zig/issues/23682riscv64-fuchsia- https://github.com/ziglang/zig/issues/23683x86_64-fuchsia- https://github.com/ziglang/zig/issues/7150
GNU/Hurd
aarch64-hurd- https://github.com/ziglang/zig/issues/25483x86-hurd- https://github.com/ziglang/zig/issues/25484x86_64-hurd- https://github.com/ziglang/zig/issues/25482
Haiku
aarch64-haiku- https://github.com/ziglang/zig/issues/23755arm-haiku- https://github.com/ziglang/zig/issues/23756powerpc-haiku- https://github.com/ziglang/zig/issues/23758riscv64-haiku- https://github.com/ziglang/zig/issues/23759x86-haiku- https://github.com/ziglang/zig/issues/23761x86_64-haiku- https://github.com/ziglang/zig/issues/7691
illumos
x86-illumos- https://github.com/ziglang/zig/issues/23689x86_64-illumos- https://github.com/ziglang/zig/issues/7152
Linux
loongarch32-linux- https://github.com/ziglang/zig/issues/23696mips64(el)-linux-(gnu,musl)abin32- https://github.com/ziglang/zig/issues/21712x86_64-linux-(gnu,musl)x32- https://github.com/ziglang/zig/issues/21711
NetBSD
mips64(el)-netbsd- https://github.com/ziglang/zig/issues/23765riscv32-netbsd- https://github.com/ziglang/zig/issues/23768riscv64-netbsd- https://github.com/ziglang/zig/issues/23769
OpenBSD
loongarch64-openbsd- https://github.com/ziglang/zig/issues/24678
SerenityOS
aarch64-serenity- https://github.com/ziglang/zig/issues/23686riscv64-serenity- https://github.com/ziglang/zig/issues/23687x86_64-serenity- https://github.com/ziglang/zig/issues/23688
WASI
wasm64-wasi- https://github.com/ziglang/zig/issues/23092
Windows
thumb-windows- https://github.com/ziglang/zig/issues/24017
Tier 4
Criteria
- The compiler can generate assembly or C source code for this target.
Targets
Haiku
m68k-haiku- https://github.com/ziglang/zig/issues/23757sparc64-haiku- https://github.com/ziglang/zig/issues/23760
Linux
alpha-linux- https://github.com/ziglang/zig/issues/25671arc(eb)-linux- https://github.com/ziglang/zig/issues/23086csky-linux- https://github.com/ziglang/zig/issues/23087hppa-linux- https://github.com/ziglang/zig/issues/25672kvx-linux- https://github.com/ziglang/zig/issues/25884kvx-linux-(musl)ilp32- https://github.com/ziglang/zig/issues/25885m68k-linux- https://github.com/ziglang/zig/issues/23089microblaze(el)-linux- https://github.com/ziglang/zig/issues/25670sh(eb)-linux- https://github.com/ziglang/zig/issues/25669sparc-linux- https://github.com/ziglang/zig/issues/23081sparc64-linux- https://github.com/ziglang/zig/issues/4931xtensa(eb)-linux- https://github.com/ziglang/zig/issues/23088
NetBSD
alpha-netbsd- https://github.com/ziglang/zig/issues/25673hppa-netbsd- https://github.com/ziglang/zig/issues/25674m68k-netbsd- https://github.com/ziglang/zig/issues/23090sh(eb)-netbsd- https://github.com/ziglang/zig/issues/25675sparc-netbsd- https://github.com/ziglang/zig/issues/23770sparc64-netbsd- https://github.com/ziglang/zig/issues/23771
OpenBSD
alpha-openbsd- https://github.com/ziglang/zig/issues/25676hppa-openbsd- https://github.com/ziglang/zig/issues/25677sh-openbsd- https://github.com/ziglang/zig/issues/25678sparc64-openbsd- https://github.com/ziglang/zig/issues/23779
Plan 9
x86_64-plan9- https://github.com/ziglang/zig/issues/7153
Unsupported
Criteria
- These are targets that Zig has either chosen to never add support for, or has dropped existing support for.
Targets
AIX
powerpc-aix- https://github.com/ziglang/zig/issues/23694powerpc64-aix- https://github.com/ziglang/zig/issues/23695
Darwin
aarch64-bridgeos- https://github.com/ziglang/zig/issues/23684arm-watchos- https://github.com/ziglang/zig/issues/23671x86-macos- https://github.com/ziglang/zig/issues/1930x86_64-ios- https://github.com/ziglang/zig/issues/23783x86_64-tvos- https://github.com/ziglang/zig/issues/23785x86_64-visionos- https://github.com/ziglang/zig/issues/23787x86_64-watchos- https://github.com/ziglang/zig/issues/23789
FreeBSD
mips(64)(el)-freebsd- https://github.com/ziglang/zig/issues/23680powerpc-freebsd- https://github.com/ziglang/zig/issues/23681thumb-freebsd- https://github.com/ziglang/zig/issues/23697x86-freebsd- https://github.com/ziglang/zig/issues/23677
GNU/kFreeBSD
x86-kfreebsd- https://github.com/ziglang/zig/issues/23669x86_64-kfreebsd- https://github.com/ziglang/zig/issues/23670
NetBSD
powerpc64-netbsd- https://github.com/ziglang/zig/issues/23767
Solaris
sparc64-solaris- https://github.com/ziglang/zig/issues/23093x86_64-solaris- https://github.com/ziglang/zig/issues/7151
z/OS
s390x-zos- https://github.com/ziglang/zig/issues/23693
Zig's level of support for various targets is broadly categorized into four tiers with Tier 1 being the highest. The goal is for Tier 1 targets to have zero disabled tests - this will become a requirement for post-1.0.0 Zig releases.
This issue serves as an overview of the current status of Zig's target support. Each target is categorized based on its current tier.
## Tier 1
### Criteria
* All non-experimental language features are known to work correctly.
* The compiler can generate machine code for this target without relying on LLVM.
* The CI machines automatically run the module tests for this target on every push.
### Targets
#### Linux
* `x86_64-linux` - https://github.com/ziglang/zig/issues/23079
## Tier 2
### Criteria
* The standard library's cross-platform abstractions have implementations for this target.
* This target has debug info capabilities and therefore produces stack traces on failed assertions and crashes.
* libc is available for this target even when cross-compiling.
* The CI machines automatically build the module tests for this target on every push.
### Targets
#### Darwin
* `aarch64-maccatalyst` - https://github.com/ziglang/zig/issues/25932
* `aarch64-macos` - https://github.com/ziglang/zig/issues/23078
* `x86_64-maccatalyst` - https://github.com/ziglang/zig/issues/25933
* `x86_64-macos` - https://github.com/ziglang/zig/issues/4897
#### FreeBSD
* `aarch64-freebsd` - https://github.com/ziglang/zig/issues/3939
* `arm-freebsd` - https://github.com/ziglang/zig/issues/23675
* `powerpc64(le)-freebsd` - https://github.com/ziglang/zig/issues/23678
* `riscv64-freebsd` - https://github.com/ziglang/zig/issues/23676
* `x86_64-freebsd` - https://github.com/ziglang/zig/issues/1759
#### Linux
* `aarch64(_be)-linux` - https://github.com/ziglang/zig/issues/2443
* `arm(eb)-linux` - https://github.com/ziglang/zig/issues/3174
* `hexagon-linux` - https://github.com/ziglang/zig/issues/21652
* `loongarch64-linux` - https://github.com/ziglang/zig/issues/21646
* `mips(el)-linux` - https://github.com/ziglang/zig/issues/3345
* `mips64(el)-linux` - https://github.com/ziglang/zig/issues/21647
* `powerpc-linux` - https://github.com/ziglang/zig/issues/21649
* `powerpc64(le)-linux` - https://github.com/ziglang/zig/issues/21651
* `riscv32-linux` - https://github.com/ziglang/zig/issues/21648
* `riscv64-linux` - https://github.com/ziglang/zig/issues/4456
* `s390x-linux` - https://github.com/ziglang/zig/issues/21402
* `thumb(eb)-linux` - https://github.com/ziglang/zig/issues/23672
* `x86-linux` - https://github.com/ziglang/zig/issues/1929
#### NetBSD
* `aarch64(_be)-netbsd` - https://github.com/ziglang/zig/issues/23084
* `arm(eb)-netbsd` - https://github.com/ziglang/zig/issues/23763
* `mips(el)-netbsd` - https://github.com/ziglang/zig/issues/23764
* `powerpc-netbsd` - https://github.com/ziglang/zig/issues/23766
* `x86-netbsd` - https://github.com/ziglang/zig/issues/23772
* `x86_64-netbsd` - https://github.com/ziglang/zig/issues/23082
#### OpenBSD
* `aarch64-openbsd` - https://github.com/ziglang/zig/issues/23085
* `arm-openbsd` - https://github.com/ziglang/zig/issues/23773
* `mips64(el)-openbsd` - https://github.com/ziglang/zig/issues/23774
* `powerpc-openbsd` - https://github.com/ziglang/zig/issues/23775
* `powerpc64-openbsd` - https://github.com/ziglang/zig/issues/23776
* `riscv64-openbsd` - https://github.com/ziglang/zig/issues/23777
* `x86-openbsd` - https://github.com/ziglang/zig/issues/23778
* `x86_64-openbsd` - https://github.com/ziglang/zig/issues/2016
#### WASI
* `wasm32-wasi` - https://github.com/ziglang/zig/issues/23091
#### Windows
* `aarch64-windows` - https://github.com/ziglang/zig/issues/16665
* `x86-windows` - https://github.com/ziglang/zig/issues/537
* `x86_64-windows` - https://github.com/ziglang/zig/issues/23080
## Tier 3
### Criteria
* The compiler can generate machine code for this target by relying on an external backend such as LLVM.
* The linker can produce object files, libraries, and executables for this target.
### Targets
#### Darwin
* `aarch64-ios` - https://github.com/ziglang/zig/issues/23782
* `aarch64-tvos` - https://github.com/ziglang/zig/issues/23784
* `aarch64-visionos` - https://github.com/ziglang/zig/issues/23786
* `aarch64-watchos` - https://github.com/ziglang/zig/issues/23788
* `aarch64-watchos-ilp32` - https://github.com/ziglang/zig/issues/25732
#### DragonFly BSD
* `x86_64-dragonfly` - https://github.com/ziglang/zig/issues/7149
#### FreeBSD
* `loongarch64-freebsd` - https://github.com/ziglang/zig/issues/24877
#### Fuchsia
* `aarch64-fuchsia` - https://github.com/ziglang/zig/issues/23682
* `riscv64-fuchsia` - https://github.com/ziglang/zig/issues/23683
* `x86_64-fuchsia` - https://github.com/ziglang/zig/issues/7150
#### GNU/Hurd
* `aarch64-hurd` - https://github.com/ziglang/zig/issues/25483
* `x86-hurd` - https://github.com/ziglang/zig/issues/25484
* `x86_64-hurd` - https://github.com/ziglang/zig/issues/25482
#### Haiku
* `aarch64-haiku` - https://github.com/ziglang/zig/issues/23755
* `arm-haiku` - https://github.com/ziglang/zig/issues/23756
* `powerpc-haiku` - https://github.com/ziglang/zig/issues/23758
* `riscv64-haiku` - https://github.com/ziglang/zig/issues/23759
* `x86-haiku` - https://github.com/ziglang/zig/issues/23761
* `x86_64-haiku` - https://github.com/ziglang/zig/issues/7691
#### illumos
* `x86-illumos` - https://github.com/ziglang/zig/issues/23689
* `x86_64-illumos` - https://github.com/ziglang/zig/issues/7152
#### Linux
* `loongarch32-linux` - https://github.com/ziglang/zig/issues/23696
* `mips64(el)-linux-(gnu,musl)abin32` - https://github.com/ziglang/zig/issues/21712
* `x86_64-linux-(gnu,musl)x32` - https://github.com/ziglang/zig/issues/21711
#### NetBSD
* `mips64(el)-netbsd` - https://github.com/ziglang/zig/issues/23765
* `riscv32-netbsd` - https://github.com/ziglang/zig/issues/23768
* `riscv64-netbsd` - https://github.com/ziglang/zig/issues/23769
#### OpenBSD
* `loongarch64-openbsd` - https://github.com/ziglang/zig/issues/24678
#### SerenityOS
* `aarch64-serenity` - https://github.com/ziglang/zig/issues/23686
* `riscv64-serenity` - https://github.com/ziglang/zig/issues/23687
* `x86_64-serenity` - https://github.com/ziglang/zig/issues/23688
#### WASI
* `wasm64-wasi` - https://github.com/ziglang/zig/issues/23092
#### Windows
* `thumb-windows` - https://github.com/ziglang/zig/issues/24017
## Tier 4
### Criteria
* The compiler can generate assembly or C source code for this target.
### Targets
#### Haiku
* `m68k-haiku` - https://github.com/ziglang/zig/issues/23757
* `sparc64-haiku` - https://github.com/ziglang/zig/issues/23760
#### Linux
* `alpha-linux` - https://github.com/ziglang/zig/issues/25671
* `arc(eb)-linux` - https://github.com/ziglang/zig/issues/23086
* `csky-linux` - https://github.com/ziglang/zig/issues/23087
* `hppa-linux` - https://github.com/ziglang/zig/issues/25672
* `kvx-linux` - https://github.com/ziglang/zig/issues/25884
* `kvx-linux-(musl)ilp32` - https://github.com/ziglang/zig/issues/25885
* `m68k-linux` - https://github.com/ziglang/zig/issues/23089
* `microblaze(el)-linux` - https://github.com/ziglang/zig/issues/25670
* `sh(eb)-linux` - https://github.com/ziglang/zig/issues/25669
* `sparc-linux` - https://github.com/ziglang/zig/issues/23081
* `sparc64-linux` - https://github.com/ziglang/zig/issues/4931
* `xtensa(eb)-linux` - https://github.com/ziglang/zig/issues/23088
#### NetBSD
* `alpha-netbsd` - https://github.com/ziglang/zig/issues/25673
* `hppa-netbsd` - https://github.com/ziglang/zig/issues/25674
* `m68k-netbsd` - https://github.com/ziglang/zig/issues/23090
* `sh(eb)-netbsd` - https://github.com/ziglang/zig/issues/25675
* `sparc-netbsd` - https://github.com/ziglang/zig/issues/23770
* `sparc64-netbsd` - https://github.com/ziglang/zig/issues/23771
#### OpenBSD
* `alpha-openbsd` - https://github.com/ziglang/zig/issues/25676
* `hppa-openbsd` - https://github.com/ziglang/zig/issues/25677
* `sh-openbsd` - https://github.com/ziglang/zig/issues/25678
* `sparc64-openbsd` - https://github.com/ziglang/zig/issues/23779
#### Plan 9
* `x86_64-plan9` - https://github.com/ziglang/zig/issues/7153
## Unsupported
### Criteria
* These are targets that Zig has either chosen to never add support for, or has dropped existing support for.
### Targets
#### AIX
* `powerpc-aix` - https://github.com/ziglang/zig/issues/23694
* `powerpc64-aix` - https://github.com/ziglang/zig/issues/23695
#### Darwin
* `aarch64-bridgeos` - https://github.com/ziglang/zig/issues/23684
* `arm-watchos` - https://github.com/ziglang/zig/issues/23671
* `x86-macos` - https://github.com/ziglang/zig/issues/1930
* `x86_64-ios` - https://github.com/ziglang/zig/issues/23783
* `x86_64-tvos` - https://github.com/ziglang/zig/issues/23785
* `x86_64-visionos` - https://github.com/ziglang/zig/issues/23787
* `x86_64-watchos` - https://github.com/ziglang/zig/issues/23789
#### FreeBSD
* `mips(64)(el)-freebsd` - https://github.com/ziglang/zig/issues/23680
* `powerpc-freebsd` - https://github.com/ziglang/zig/issues/23681
* `thumb-freebsd` - https://github.com/ziglang/zig/issues/23697
* `x86-freebsd` - https://github.com/ziglang/zig/issues/23677
#### GNU/kFreeBSD
* `x86-kfreebsd` - https://github.com/ziglang/zig/issues/23669
* `x86_64-kfreebsd` - https://github.com/ziglang/zig/issues/23670
#### NetBSD
* `powerpc64-netbsd` - https://github.com/ziglang/zig/issues/23767
#### Solaris
* `sparc64-solaris` - https://github.com/ziglang/zig/issues/23093
* `x86_64-solaris` - https://github.com/ziglang/zig/issues/7151
#### z/OS
* `s390x-zos` - https://github.com/ziglang/zig/issues/23693