Your source for static cross- and native- musl-based toolchains.

This is a community website and is not officially endorsed by musl or its authors.

toolchains ( linux, windows, mac, solaris, docker, sources, config, more... )
xstatic ( distro, kernel, packages, sources )
meta ( changelog, matrix )
links ( musl, mingw, risc-v )

Small and reliable pre-built GCC toolchains for many architectures.
Cross (i686-hosted) by default. Native for completeness.
Static so they run on supported platforms without dependencies.

This site is curl-friendly for direct links to toolchains!

  $ curl -s musl.cc | grep mips
  https://musl.cc/mips-linux-musl-cross.tgz
  ...

Toolchains are built1 using several modified versions (see below) of musl-cross-make.

For your convenience, Docker images2 are provided and updated regularly:

  $ docker pull muslcc/i686:aarch64-linux-musl
Compiler prefixes are removed in those images and they're rsync'd to root.

Many thanks to others in the #musl and associated communities for making this effort possible.
In particular, Rob Landley, Laurent Bercot (skarnet), and of course Rich Felker (dalias).

Ingredients:

[ Standard: source/config.mak ]
[ MinGW: source/config.mak ]

Toolchains:

Toolchains support the following languages: C, C++, Fortran except where noteda.
They are cryptographically signed with the following key: 0xB1D0B4566FBBDB40

GCC major releases: ( 5, 6, 7, 8, 9, 10 ).
For non-i686 toolchains, click here. Something else? Contact me.

Index of /

Index of /


../
SHA512SUMS                                         07-Jul-2020 10:28               36424
aarch64-linux-musl-cross.tgz                       07-Jul-2020 10:26            90795647
aarch64-linux-musl-cross.tgz.sig                   07-Jul-2020 10:26                 566
aarch64-linux-musl-native.tgz                      07-Jul-2020 10:26            63747697
aarch64-linux-musl-native.tgz.sig                  07-Jul-2020 10:26                 566
aarch64_be-linux-musl-cross.tgz                    07-Jul-2020 10:26            92859406
aarch64_be-linux-musl-cross.tgz.sig                07-Jul-2020 10:26                 566
aarch64_be-linux-musl-native.tgz                   07-Jul-2020 10:26            64120776
aarch64_be-linux-musl-native.tgz.sig               07-Jul-2020 10:26                 566
arm-linux-musleabi-cross.tgz                       07-Jul-2020 10:26            88487145
arm-linux-musleabi-cross.tgz.sig                   07-Jul-2020 10:26                 566
arm-linux-musleabi-native.tgz                      07-Jul-2020 10:26            63700982
arm-linux-musleabi-native.tgz.sig                  07-Jul-2020 10:26                 566
arm-linux-musleabihf-cross.tgz                     07-Jul-2020 10:26            88335505
arm-linux-musleabihf-cross.tgz.sig                 07-Jul-2020 10:26                 566
arm-linux-musleabihf-native.tgz                    07-Jul-2020 10:26            63536059
arm-linux-musleabihf-native.tgz.sig                07-Jul-2020 10:26                 566
armeb-linux-musleabi-cross.tgz                     07-Jul-2020 10:26            90135553
armeb-linux-musleabi-cross.tgz.sig                 07-Jul-2020 10:26                 566
armeb-linux-musleabi-native.tgz                    07-Jul-2020 10:26            63878607
armeb-linux-musleabi-native.tgz.sig                07-Jul-2020 10:26                 566
armeb-linux-musleabihf-cross.tgz                   07-Jul-2020 10:26            89954702
armeb-linux-musleabihf-cross.tgz.sig               07-Jul-2020 10:26                 566
armeb-linux-musleabihf-native.tgz                  07-Jul-2020 10:26            63664232
armeb-linux-musleabihf-native.tgz.sig              07-Jul-2020 10:26                 566
armel-linux-musleabi-cross.tgz                     07-Jul-2020 10:26            88538018
armel-linux-musleabi-cross.tgz.sig                 07-Jul-2020 10:26                 566
armel-linux-musleabi-native.tgz                    07-Jul-2020 10:26            63713990
armel-linux-musleabi-native.tgz.sig                07-Jul-2020 10:26                 566
armel-linux-musleabihf-cross.tgz                   07-Jul-2020 10:26            88356313
armel-linux-musleabihf-cross.tgz.sig               07-Jul-2020 10:26                 566
armel-linux-musleabihf-native.tgz                  07-Jul-2020 10:26            63531504
armel-linux-musleabihf-native.tgz.sig              07-Jul-2020 10:26                 566
armv5l-linux-musleabihf-cross.tgz                  07-Jul-2020 10:26            88351650
armv5l-linux-musleabihf-cross.tgz.sig              07-Jul-2020 10:26                 566
armv5l-linux-musleabihf-native.tgz                 07-Jul-2020 10:26            63531772
armv5l-linux-musleabihf-native.tgz.sig             07-Jul-2020 10:26                 566
armv7l-linux-musleabihf-cross.tgz                  07-Jul-2020 10:26            88351085
armv7l-linux-musleabihf-cross.tgz.sig              07-Jul-2020 10:26                 566
armv7l-linux-musleabihf-native.tgz                 07-Jul-2020 10:26            63536814
armv7l-linux-musleabihf-native.tgz.sig             07-Jul-2020 10:26                 566
armv7m-linux-musleabi-cross.tgz                    07-Jul-2020 10:26            88488997
armv7m-linux-musleabi-cross.tgz.sig                07-Jul-2020 10:26                 566
armv7m-linux-musleabi-native.tgz                   07-Jul-2020 10:26            63695438
armv7m-linux-musleabi-native.tgz.sig               07-Jul-2020 10:26                 566
armv7r-linux-musleabihf-cross.tgz                  07-Jul-2020 10:26            88354993
armv7r-linux-musleabihf-cross.tgz.sig              07-Jul-2020 10:26                 566
armv7r-linux-musleabihf-native.tgz                 07-Jul-2020 10:26            63537047
armv7r-linux-musleabihf-native.tgz.sig             07-Jul-2020 10:26                 566
i486-linux-musl-cross.tgz                          07-Jul-2020 10:26            93511136
i486-linux-musl-cross.tgz.sig                      07-Jul-2020 10:26                 566
i486-linux-musl-native.tgz                         07-Jul-2020 10:26            70481460
i486-linux-musl-native.tgz.sig                     07-Jul-2020 10:26                 566
i686-linux-musl-cross.tgz                          07-Jul-2020 10:26            94053932
i686-linux-musl-cross.tgz.sig                      07-Jul-2020 10:26                 566
i686-linux-musl-native.tgz                         07-Jul-2020 10:26            71267425
i686-linux-musl-native.tgz.sig                     07-Jul-2020 10:26                 566
i686-w64-mingw32-cross.tgz                         07-Jul-2020 10:26           102288227
i686-w64-mingw32-cross.tgz.sig                     07-Jul-2020 10:26                 566
i686-w64-mingw32-native.zip                        07-Jul-2020 10:26            93047976
i686-w64-mingw32-native.zip.sig                    07-Jul-2020 10:26                 566
m68k-linux-musl-cross.tgz                          07-Jul-2020 10:26            79165406
m68k-linux-musl-cross.tgz.sig                      07-Jul-2020 10:26                 566
m68k-linux-musl-native.tgz                         07-Jul-2020 10:26            54972815
m68k-linux-musl-native.tgz.sig                     07-Jul-2020 10:26                 566
microblaze-linux-musl-cross.tgz                    07-Jul-2020 10:26            68504856
microblaze-linux-musl-cross.tgz.sig                07-Jul-2020 10:26                 566
microblaze-linux-musl-native.tgz                   07-Jul-2020 10:26            53054314
microblaze-linux-musl-native.tgz.sig               07-Jul-2020 10:26                 566
microblazeel-linux-musl-cross.tgz                  07-Jul-2020 10:26            67655620
microblazeel-linux-musl-cross.tgz.sig              07-Jul-2020 10:26                 566
microblazeel-linux-musl-native.tgz                 07-Jul-2020 10:26            52955745
microblazeel-linux-musl-native.tgz.sig             07-Jul-2020 10:26                 566
mips-linux-musl-cross.tgz                          07-Jul-2020 10:26            88741386
mips-linux-musl-cross.tgz.sig                      07-Jul-2020 10:27                 566
mips-linux-musl-native.tgz                         07-Jul-2020 10:27            70721552
mips-linux-musl-native.tgz.sig                     07-Jul-2020 10:27                 566
mips-linux-musln32sf-cross.tgz                     07-Jul-2020 10:27            89071386
mips-linux-musln32sf-cross.tgz.sig                 07-Jul-2020 10:27                 566
mips-linux-musln32sf-native.tgz                    07-Jul-2020 10:27            71194107
mips-linux-musln32sf-native.tgz.sig                07-Jul-2020 10:27                 566
mips-linux-muslsf-cross.tgz                        07-Jul-2020 10:27            88968033
mips-linux-muslsf-cross.tgz.sig                    07-Jul-2020 10:27                 566
mips-linux-muslsf-native.tgz                       07-Jul-2020 10:27            71194481
mips-linux-muslsf-native.tgz.sig                   07-Jul-2020 10:27                 566
mips64-linux-musl-cross.tgz                        07-Jul-2020 10:27            93837859
mips64-linux-musl-cross.tgz.sig                    07-Jul-2020 10:27                 566
mips64-linux-musl-native.tgz                       07-Jul-2020 10:27            71096956
mips64-linux-musl-native.tgz.sig                   07-Jul-2020 10:27                 566
mips64-linux-musln32-cross.tgz                     07-Jul-2020 10:27            90550517
mips64-linux-musln32-cross.tgz.sig                 07-Jul-2020 10:27                 566
mips64-linux-musln32-native.tgz                    07-Jul-2020 10:27            67710047
mips64-linux-musln32-native.tgz.sig                07-Jul-2020 10:27                 566
mips64-linux-musln32sf-cross.tgz                   07-Jul-2020 10:27            90659698
mips64-linux-musln32sf-cross.tgz.sig               07-Jul-2020 10:27                 566
mips64-linux-musln32sf-native.tgz                  07-Jul-2020 10:27            67845450
mips64-linux-musln32sf-native.tgz.sig              07-Jul-2020 10:27                 566
mips64el-linux-musl-cross.tgz                      07-Jul-2020 10:27            91744634
mips64el-linux-musl-cross.tgz.sig                  07-Jul-2020 10:27                 566
mips64el-linux-musl-native.tgz                     07-Jul-2020 10:27            70695361
mips64el-linux-musl-native.tgz.sig                 07-Jul-2020 10:27                 566
mips64el-linux-musln32-cross.tgz                   07-Jul-2020 10:27            89253745
mips64el-linux-musln32-cross.tgz.sig               07-Jul-2020 10:27                 566
mips64el-linux-musln32-native.tgz                  07-Jul-2020 10:27            67476996
mips64el-linux-musln32-native.tgz.sig              07-Jul-2020 10:27                 566
mips64el-linux-musln32sf-cross.tgz                 07-Jul-2020 10:27            89426872
mips64el-linux-musln32sf-cross.tgz.sig             07-Jul-2020 10:27                 566
mips64el-linux-musln32sf-native.tgz                07-Jul-2020 10:27            67582121
mips64el-linux-musln32sf-native.tgz.sig            07-Jul-2020 10:27                 566
mipsel-linux-musl-cross.tgz                        07-Jul-2020 10:27            87136899
mipsel-linux-musl-cross.tgz.sig                    07-Jul-2020 10:27                 566
mipsel-linux-musl-native.tgz                       07-Jul-2020 10:27            70155533
mipsel-linux-musl-native.tgz.sig                   07-Jul-2020 10:27                 566
mipsel-linux-musln32-cross.tgz                     07-Jul-2020 10:27            87149630
mipsel-linux-musln32-cross.tgz.sig                 07-Jul-2020 10:27                 566
mipsel-linux-musln32-native.tgz                    07-Jul-2020 10:27            70160184
mipsel-linux-musln32-native.tgz.sig                07-Jul-2020 10:27                 566
mipsel-linux-musln32sf-cross.tgz                   07-Jul-2020 10:27            87373256
mipsel-linux-musln32sf-cross.tgz.sig               07-Jul-2020 10:27                 566
mipsel-linux-musln32sf-native.tgz                  07-Jul-2020 10:27            70613232
mipsel-linux-musln32sf-native.tgz.sig              07-Jul-2020 10:27                 566
mipsel-linux-muslsf-cross.tgz                      07-Jul-2020 10:27            87464250
mipsel-linux-muslsf-cross.tgz.sig                  07-Jul-2020 10:27                 566
mipsel-linux-muslsf-native.tgz                     07-Jul-2020 10:27            70606691
mipsel-linux-muslsf-native.tgz.sig                 07-Jul-2020 10:27                 566
or1k-linux-musl-cross.tgz                          07-Jul-2020 10:27            79731238
or1k-linux-musl-cross.tgz.sig                      07-Jul-2020 10:27                 566
or1k-linux-musl-native.tgz                         07-Jul-2020 10:27            64646279
or1k-linux-musl-native.tgz.sig                     07-Jul-2020 10:27                 566
powerpc-linux-musl-cross.tgz                       07-Jul-2020 10:27            89950923
powerpc-linux-musl-cross.tgz.sig                   07-Jul-2020 10:27                 566
powerpc-linux-musl-native.tgz                      07-Jul-2020 10:27            70635244
powerpc-linux-musl-native.tgz.sig                  07-Jul-2020 10:27                 566
powerpc-linux-muslsf-cross.tgz                     07-Jul-2020 10:27            90262954
powerpc-linux-muslsf-cross.tgz.sig                 07-Jul-2020 10:27                 565
powerpc-linux-muslsf-native.tgz                    07-Jul-2020 10:27            71005131
powerpc-linux-muslsf-native.tgz.sig                07-Jul-2020 10:27                 566
powerpc64-linux-musl-cross.tgz                     07-Jul-2020 10:27            95671007
powerpc64-linux-musl-cross.tgz.sig                 07-Jul-2020 10:27                 566
powerpc64-linux-musl-native.tgz                    07-Jul-2020 10:27            72741405
powerpc64-linux-musl-native.tgz.sig                07-Jul-2020 10:27                 566
powerpc64le-linux-musl-cross.tgz                   07-Jul-2020 10:27            93439864
powerpc64le-linux-musl-cross.tgz.sig               07-Jul-2020 10:27                 566
powerpc64le-linux-musl-native.tgz                  07-Jul-2020 10:27            72669646
powerpc64le-linux-musl-native.tgz.sig              07-Jul-2020 10:27                 566
powerpcle-linux-musl-cross.tgz                     07-Jul-2020 10:27            88496947
powerpcle-linux-musl-cross.tgz.sig                 07-Jul-2020 10:27                 566
powerpcle-linux-musl-native.tgz                    07-Jul-2020 10:27            71039088
powerpcle-linux-musl-native.tgz.sig                07-Jul-2020 10:27                 566
powerpcle-linux-muslsf-cross.tgz                   07-Jul-2020 10:27            88807448
powerpcle-linux-muslsf-cross.tgz.sig               07-Jul-2020 10:27                 566
powerpcle-linux-muslsf-native.tgz                  07-Jul-2020 10:27            71389275
powerpcle-linux-muslsf-native.tgz.sig              07-Jul-2020 10:27                 566
riscv64-linux-musl-cross.tgz                       07-Jul-2020 10:27            96229502
riscv64-linux-musl-cross.tgz.sig                   07-Jul-2020 10:27                 566
riscv64-linux-musl-native.tgz                      07-Jul-2020 10:27            61662472
riscv64-linux-musl-native.tgz.sig                  07-Jul-2020 10:27                 566
s390x-linux-musl-cross.tgz                         07-Jul-2020 10:27            89677509
s390x-linux-musl-cross.tgz.sig                     07-Jul-2020 10:27                 566
s390x-linux-musl-native.tgz                        07-Jul-2020 10:27            61864932
s390x-linux-musl-native.tgz.sig                    07-Jul-2020 10:27                 566
sh2-linux-musl-cross.tgz                           07-Jul-2020 10:27            80185861
sh2-linux-musl-cross.tgz.sig                       07-Jul-2020 10:27                 566
sh2-linux-musl-native.tgz                          07-Jul-2020 10:27            63091122
sh2-linux-musl-native.tgz.sig                      07-Jul-2020 10:27                 566
sh2-linux-muslfdpic-cross.tgz                      07-Jul-2020 10:27            80516399
sh2-linux-muslfdpic-cross.tgz.sig                  07-Jul-2020 10:27                 566
sh2-linux-muslfdpic-native.tgz                     07-Jul-2020 10:27            69813606
sh2-linux-muslfdpic-native.tgz.sig                 07-Jul-2020 10:27                 566
sh2eb-linux-musl-cross.tgz                         07-Jul-2020 10:27            81426421
sh2eb-linux-musl-cross.tgz.sig                     07-Jul-2020 10:27                 566
sh2eb-linux-musl-native.tgz                        07-Jul-2020 10:27            63603101
sh2eb-linux-musl-native.tgz.sig                    07-Jul-2020 10:27                 566
sh2eb-linux-muslfdpic-cross.tgz                    07-Jul-2020 10:27            81660324
sh2eb-linux-muslfdpic-cross.tgz.sig                07-Jul-2020 10:27                 566
sh2eb-linux-muslfdpic-native.tgz                   07-Jul-2020 10:27            70812091
sh2eb-linux-muslfdpic-native.tgz.sig               07-Jul-2020 10:27                 566
sh4-linux-musl-cross.tgz                           07-Jul-2020 10:27            80221549
sh4-linux-musl-cross.tgz.sig                       07-Jul-2020 10:27                 566
sh4-linux-musl-native.tgz                          07-Jul-2020 10:27            63018746
sh4-linux-musl-native.tgz.sig                      07-Jul-2020 10:27                 566
sh4eb-linux-musl-cross.tgz                         07-Jul-2020 10:27            81491859
sh4eb-linux-musl-cross.tgz.sig                     07-Jul-2020 10:27                 566
sh4eb-linux-musl-native.tgz                        07-Jul-2020 10:27            63504729
sh4eb-linux-musl-native.tgz.sig                    07-Jul-2020 10:27                 566
x86_64-linux-musl-cross.tgz                        07-Jul-2020 10:27            99760907
x86_64-linux-musl-cross.tgz.sig                    07-Jul-2020 10:27                 566
x86_64-linux-musl-native.tgz                       07-Jul-2020 10:27            69782735
x86_64-linux-musl-native.tgz.sig                   07-Jul-2020 10:27                 566
x86_64-linux-muslx32-cross.tgz                     07-Jul-2020 10:27            97416087
x86_64-linux-muslx32-cross.tgz.sig                 07-Jul-2020 10:27                 566
x86_64-linux-muslx32-native.tgz                    07-Jul-2020 10:27            69727586
x86_64-linux-muslx32-native.tgz.sig                07-Jul-2020 10:27                 566
x86_64-w64-mingw32-cross.tgz                       07-Jul-2020 10:27           115191238
x86_64-w64-mingw32-cross.tgz.sig                   07-Jul-2020 10:28                 566
x86_64-w64-mingw32-native.zip                      07-Jul-2020 10:28           107870857
x86_64-w64-mingw32-native.zip.sig                  07-Jul-2020 10:28                 566

Bugs discovered:

This effort has led to the discovery of several compiler bugs:

Bugs in software found by using these toolchains not shown.

Known issues:

  1. Fortran support is missing from microblaze{,el} cross- and native- toolchains due to an aforementioned bug.
  2. Native SH-2 FDPIC toolchains need to be built with -freorder-blocks-algorithm=simple due to an aforementioned bug.
  3. OpenRISC target: GCC 8 patched forward from gcc-8_2_0-release to 45d0f2 from here (thanks smaeul). GCC 9 includes it.
  4. [meta] Alpine Linux breaks packages between upgrades. Nginx + Lua (for curl support) was broken for a while, sorry.

Other notes:

  1. Hashes and cryptographic signatures3 are provided -- use HTTPS for greater security.
  2. Versions may be bumped up or down without notice if bugs are discovered.
  3. You should pin and reproduce any version of these toolchains yourself -- old binaries might not be archived. Don't trust random third-party binaries :)
  4. Build logs are not provided as toolchains are easily reproduced.
  5. Looking for i686-hosted cross compilers to target Win32? You're in luck: i686/sig and x86_64/sig (built with this).
  6. Native i686- and x86_64- Win32 toolchains. Packaged as .zip for convenience: i686/sig and x86_64/sig (built with this).
  7. If you encounter issues or want to request additional architectures, let me know
You may also be interested in mkroot, a QEMU-based rootfs and kernel builder.

References:

[1]: Toolchains are built using Adélie Linux via these scripts. You can also use this platform-agnostic script.
[2]: Docker images based on the Alpine Linux image for size. Packaged with MacroMμ. x86_64-hosted images no longer updated.
[3]: Validate binaries against my public key.
[4]: 64-bit RISC-V support is merged into musl. 32-bit support is temporarily unsupported.
[5]: Clang/LLVM is on the TODO list. Contributions welcome. Look at ELLCC in the interim.


Changelog (highlights):