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 ( download, sources, docker, matrix, more... )
xstatic ( distro, kernel, packages, sources )
links ( musl, mingw, risc-v )

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

This site is even 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 also provided and updated regularly:

  $ docker pull muslcc/x86_64:aarch64-linux-musleabi
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 ]
[ MinGW32: source/config.mak7
[ Unstable: (RISC-V6=source/config.mak) ]
[ Landley's5: (6.4.0=source/config.mak) (7.3.0=source/config.mak) ]

Toolchains:

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

Looking for non-x86_64 toolchains? click here! Something else? Contact me.

Index of /

Index of /


../
SHA512SUMS                                         30-Jan-2019 22:35               16066
SHA512SUMS.sig                                     30-Jan-2019 22:35                 566
aarch64-linux-musleabi-cross.tgz                   30-Jan-2019 22:35            74734366
aarch64-linux-musleabi-cross.tgz.sig               30-Jan-2019 22:35                 566
aarch64-linux-musleabi-native.tgz                  30-Jan-2019 22:35            50977201
aarch64-linux-musleabi-native.tgz.sig              30-Jan-2019 22:35                 566
aarch64_be-linux-musl-cross.tgz                    30-Jan-2019 22:35            76651614
aarch64_be-linux-musl-cross.tgz.sig                30-Jan-2019 22:35                 566
aarch64_be-linux-musl-native.tgz                   30-Jan-2019 22:35            51291968
aarch64_be-linux-musl-native.tgz.sig               30-Jan-2019 22:35                 566
arm-linux-musleabi-cross.tgz                       30-Jan-2019 22:35            72956376
arm-linux-musleabi-cross.tgz.sig                   30-Jan-2019 22:35                 566
arm-linux-musleabi-native.tgz                      30-Jan-2019 22:35            51775558
arm-linux-musleabi-native.tgz.sig                  30-Jan-2019 22:35                 566
arm-linux-musleabihf-cross.tgz                     30-Jan-2019 22:35            72834280
arm-linux-musleabihf-cross.tgz.sig                 30-Jan-2019 22:35                 566
arm-linux-musleabihf-native.tgz                    30-Jan-2019 22:35            51563775
arm-linux-musleabihf-native.tgz.sig                30-Jan-2019 22:35                 566
armeb-linux-musleabi-cross.tgz                     30-Jan-2019 22:35            74519483
armeb-linux-musleabi-cross.tgz.sig                 30-Jan-2019 22:35                 566
armeb-linux-musleabi-native.tgz                    30-Jan-2019 22:35            51927022
armeb-linux-musleabi-native.tgz.sig                30-Jan-2019 22:35                 566
armeb-linux-musleabihf-cross.tgz                   30-Jan-2019 22:35            74380194
armeb-linux-musleabihf-cross.tgz.sig               30-Jan-2019 22:35                 566
armeb-linux-musleabihf-native.tgz                  30-Jan-2019 22:35            51703345
armeb-linux-musleabihf-native.tgz.sig              30-Jan-2019 22:35                 566
armel-linux-musleabi-cross.tgz                     30-Jan-2019 22:35            72945901
armel-linux-musleabi-cross.tgz.sig                 30-Jan-2019 22:35                 566
armel-linux-musleabi-native.tgz                    30-Jan-2019 22:35            51782856
armel-linux-musleabi-native.tgz.sig                30-Jan-2019 22:35                 566
armel-linux-musleabihf-cross.tgz                   30-Jan-2019 22:35            72824478
armel-linux-musleabihf-cross.tgz.sig               30-Jan-2019 22:35                 566
armel-linux-musleabihf-native.tgz                  30-Jan-2019 22:35            51563061
armel-linux-musleabihf-native.tgz.sig              30-Jan-2019 22:35                 566
armv5l-linux-musleabihf-cross.tgz                  30-Jan-2019 22:35            72837462
armv5l-linux-musleabihf-cross.tgz.sig              30-Jan-2019 22:35                 566
armv5l-linux-musleabihf-native.tgz                 30-Jan-2019 22:35            51570738
armv5l-linux-musleabihf-native.tgz.sig             30-Jan-2019 22:35                 566
armv7l-linux-musleabihf-cross.tgz                  30-Jan-2019 22:35            72831920
armv7l-linux-musleabihf-cross.tgz.sig              30-Jan-2019 22:35                 566
armv7l-linux-musleabihf-native.tgz                 30-Jan-2019 22:35            51554917
armv7l-linux-musleabihf-native.tgz.sig             30-Jan-2019 22:35                 566
armv7m-linux-musleabi-cross.tgz                    30-Jan-2019 22:35            72959533
armv7m-linux-musleabi-cross.tgz.sig                30-Jan-2019 22:35                 566
armv7m-linux-musleabi-native.tgz                   30-Jan-2019 22:35            51781577
armv7m-linux-musleabi-native.tgz.sig               30-Jan-2019 22:35                 566
armv7r-linux-musleabihf-cross.tgz                  30-Jan-2019 22:35            72820340
armv7r-linux-musleabihf-cross.tgz.sig              30-Jan-2019 22:35                 566
armv7r-linux-musleabihf-native.tgz                 30-Jan-2019 22:35            51570965
armv7r-linux-musleabihf-native.tgz.sig             30-Jan-2019 22:35                 566
i486-linux-musl-cross.tgz                          30-Jan-2019 22:35            76835423
i486-linux-musl-cross.tgz.sig                      30-Jan-2019 22:35                 566
i486-linux-musl-native.tgz                         30-Jan-2019 22:35            57051820
i486-linux-musl-native.tgz.sig                     30-Jan-2019 22:35                 566
i686-linux-musl-cross.tgz                          30-Jan-2019 22:35            77135364
i686-linux-musl-cross.tgz.sig                      30-Jan-2019 22:35                 566
i686-linux-musl-native.tgz                         30-Jan-2019 22:35            57321061
i686-linux-musl-native.tgz.sig                     30-Jan-2019 22:35                 566
i686-w64-mingw32-cross.tgz                         30-Jan-2019 22:35            83071755
i686-w64-mingw32-cross.tgz.sig                     30-Jan-2019 22:35                 566
i686-w64-mingw32-native.tgz                        30-Jan-2019 22:35            62335369
i686-w64-mingw32-native.tgz.sig                    30-Jan-2019 22:35                 566
m68k-linux-musl-cross.tgz                          30-Jan-2019 22:35            63828073
m68k-linux-musl-cross.tgz.sig                      30-Jan-2019 22:35                 566
m68k-linux-musl-native.tgz                         30-Jan-2019 22:35            41412471
m68k-linux-musl-native.tgz.sig                     30-Jan-2019 22:35                 566
microblaze-linux-musl-cross.tgz                    30-Jan-2019 22:35            54244754
microblaze-linux-musl-cross.tgz.sig                30-Jan-2019 22:35                 566
microblaze-linux-musl-native.tgz                   30-Jan-2019 22:35            41102929
microblaze-linux-musl-native.tgz.sig               30-Jan-2019 22:35                 566
microblazeel-linux-musl-cross.tgz                  30-Jan-2019 22:35            53430308
microblazeel-linux-musl-cross.tgz.sig              30-Jan-2019 22:35                 566
microblazeel-linux-musl-native.tgz                 30-Jan-2019 22:35            41049774
microblazeel-linux-musl-native.tgz.sig             30-Jan-2019 22:35                 566
mips-linux-musl-cross.tgz                          30-Jan-2019 22:35            72523017
mips-linux-musl-cross.tgz.sig                      30-Jan-2019 22:35                 566
mips-linux-musl-native.tgz                         30-Jan-2019 22:35            57779215
mips-linux-musl-native.tgz.sig                     30-Jan-2019 22:35                 566
mips-linux-musln32sf-cross.tgz                     30-Jan-2019 22:35            72802252
mips-linux-musln32sf-cross.tgz.sig                 30-Jan-2019 22:35                 566
mips-linux-musln32sf-native.tgz                    30-Jan-2019 22:35            58223618
mips-linux-musln32sf-native.tgz.sig                30-Jan-2019 22:35                 566
mips-linux-muslsf-cross.tgz                        30-Jan-2019 22:35            72797360
mips-linux-muslsf-cross.tgz.sig                    30-Jan-2019 22:35                 566
mips-linux-muslsf-native.tgz                       30-Jan-2019 22:35            58226413
mips-linux-muslsf-native.tgz.sig                   30-Jan-2019 22:35                 566
mips64-linux-musl-cross.tgz                        30-Jan-2019 22:35            77270340
mips64-linux-musl-cross.tgz.sig                    30-Jan-2019 22:35                 566
mips64-linux-musl-native.tgz                       30-Jan-2019 22:35            58204960
mips64-linux-musl-native.tgz.sig                   30-Jan-2019 22:35                 566
mips64-linux-musln32-cross.tgz                     30-Jan-2019 22:35            74274845
mips64-linux-musln32-cross.tgz.sig                 30-Jan-2019 22:35                 566
mips64-linux-musln32-native.tgz                    30-Jan-2019 22:35            54871791
mips64-linux-musln32-native.tgz.sig                30-Jan-2019 22:35                 566
mips64-linux-musln32sf-cross.tgz                   30-Jan-2019 22:35            74444586
mips64-linux-musln32sf-cross.tgz.sig               30-Jan-2019 22:35                 566
mips64-linux-musln32sf-native.tgz                  30-Jan-2019 22:35            54961492
mips64-linux-musln32sf-native.tgz.sig              30-Jan-2019 22:35                 566
mips64el-linux-musl-cross.tgz                      30-Jan-2019 22:35            75306422
mips64el-linux-musl-cross.tgz.sig                  30-Jan-2019 22:35                 566
mips64el-linux-musl-native.tgz                     30-Jan-2019 22:35            57947178
mips64el-linux-musl-native.tgz.sig                 30-Jan-2019 22:35                 566
mips64el-linux-musln32-cross.tgz                   30-Jan-2019 22:35            73032955
mips64el-linux-musln32-cross.tgz.sig               30-Jan-2019 22:35                 566
mips64el-linux-musln32-native.tgz                  30-Jan-2019 22:35            54706456
mips64el-linux-musln32-native.tgz.sig              30-Jan-2019 22:35                 566
mips64el-linux-musln32sf-cross.tgz                 30-Jan-2019 22:35            73210282
mips64el-linux-musln32sf-cross.tgz.sig             30-Jan-2019 22:35                 566
mips64el-linux-musln32sf-native.tgz                30-Jan-2019 22:35            54794369
mips64el-linux-musln32sf-native.tgz.sig            30-Jan-2019 22:35                 566
mipsel-linux-musl-cross.tgz                        30-Jan-2019 22:35            70983189
mipsel-linux-musl-cross.tgz.sig                    30-Jan-2019 22:35                 566
mipsel-linux-musl-native.tgz                       30-Jan-2019 22:35            57355769
mipsel-linux-musl-native.tgz.sig                   30-Jan-2019 22:35                 566
mipsel-linux-musln32-cross.tgz                     30-Jan-2019 22:35            70990620
mipsel-linux-musln32-cross.tgz.sig                 30-Jan-2019 22:35                 566
mipsel-linux-musln32-native.tgz                    30-Jan-2019 22:35            57354551
mipsel-linux-musln32-native.tgz.sig                30-Jan-2019 22:35                 566
mipsel-linux-musln32sf-cross.tgz                   30-Jan-2019 22:35            71268056
mipsel-linux-musln32sf-cross.tgz.sig               30-Jan-2019 22:35                 566
mipsel-linux-musln32sf-native.tgz                  30-Jan-2019 22:35            57797166
mipsel-linux-musln32sf-native.tgz.sig              30-Jan-2019 22:35                 566
mipsel-linux-muslsf-cross.tgz                      30-Jan-2019 22:35            71261455
mipsel-linux-muslsf-cross.tgz.sig                  30-Jan-2019 22:35                 566
mipsel-linux-muslsf-native.tgz                     30-Jan-2019 22:35            57794814
mipsel-linux-muslsf-native.tgz.sig                 30-Jan-2019 22:35                 566
or1k-linux-musl-cross.tgz                          30-Jan-2019 22:35            63896754
or1k-linux-musl-cross.tgz.sig                      30-Jan-2019 22:35                 565
or1k-linux-musl-native.tgz                         30-Jan-2019 22:35            49241928
or1k-linux-musl-native.tgz.sig                     30-Jan-2019 22:35                 566
powerpc-linux-musl-cross.tgz                       30-Jan-2019 22:35            75229586
powerpc-linux-musl-cross.tgz.sig                   30-Jan-2019 22:35                 566
powerpc-linux-musl-native.tgz                      30-Jan-2019 22:35            57660939
powerpc-linux-musl-native.tgz.sig                  30-Jan-2019 22:35                 566
powerpc-linux-muslsf-cross.tgz                     30-Jan-2019 22:35            75505076
powerpc-linux-muslsf-cross.tgz.sig                 30-Jan-2019 22:35                 566
powerpc-linux-muslsf-native.tgz                    30-Jan-2019 22:35            58002527
powerpc-linux-muslsf-native.tgz.sig                30-Jan-2019 22:35                 566
powerpc64-linux-musl-cross.tgz                     30-Jan-2019 22:35            79114340
powerpc64-linux-musl-cross.tgz.sig                 30-Jan-2019 22:35                 566
powerpc64-linux-musl-native.tgz                    30-Jan-2019 22:35            59732831
powerpc64-linux-musl-native.tgz.sig                30-Jan-2019 22:35                 566
powerpc64le-linux-musl-cross.tgz                   30-Jan-2019 22:35            76967366
powerpc64le-linux-musl-cross.tgz.sig               30-Jan-2019 22:35                 566
powerpc64le-linux-musl-native.tgz                  30-Jan-2019 22:35            60456487
powerpc64le-linux-musl-native.tgz.sig              30-Jan-2019 22:35                 566
powerpcle-linux-musl-cross.tgz                     30-Jan-2019 22:35            73905962
powerpcle-linux-musl-cross.tgz.sig                 30-Jan-2019 22:35                 566
powerpcle-linux-musl-native.tgz                    30-Jan-2019 22:35            58117773
powerpcle-linux-musl-native.tgz.sig                30-Jan-2019 22:35                 566
powerpcle-linux-muslsf-cross.tgz                   30-Jan-2019 22:35            74186811
powerpcle-linux-muslsf-cross.tgz.sig               30-Jan-2019 22:35                 566
powerpcle-linux-muslsf-native.tgz                  30-Jan-2019 22:35            58427555
powerpcle-linux-muslsf-native.tgz.sig              30-Jan-2019 22:35                 566
riscv32-linux-musl-cross.tgz                       30-Jan-2019 22:35            73902084
riscv32-linux-musl-cross.tgz.sig                   30-Jan-2019 22:35                 566
riscv32-linux-musl-native.tgz                      30-Jan-2019 22:35            47869524
riscv32-linux-musl-native.tgz.sig                  30-Jan-2019 22:35                 566
riscv64-linux-musl-cross.tgz                       30-Jan-2019 22:35            76976057
riscv64-linux-musl-cross.tgz.sig                   30-Jan-2019 22:35                 566
riscv64-linux-musl-native.tgz                      30-Jan-2019 22:35            47193262
riscv64-linux-musl-native.tgz.sig                  30-Jan-2019 22:35                 566
s390x-linux-musl-cross.tgz                         30-Jan-2019 22:35            73053893
s390x-linux-musl-cross.tgz.sig                     30-Jan-2019 22:35                 566
s390x-linux-musl-native.tgz                        30-Jan-2019 22:35            49029934
s390x-linux-musl-native.tgz.sig                    30-Jan-2019 22:35                 566
sh2-linux-musl-cross.tgz                           30-Jan-2019 22:35            64274574
sh2-linux-musl-cross.tgz.sig                       30-Jan-2019 22:35                 566
sh2-linux-musl-native.tgz                          30-Jan-2019 22:35            49824448
sh2-linux-musl-native.tgz.sig                      30-Jan-2019 22:35                 566
sh2-linux-muslfdpic-cross.tgz                      30-Jan-2019 22:35            64536243
sh2-linux-muslfdpic-cross.tgz.sig                  30-Jan-2019 22:35                 566
sh2-linux-muslfdpic-native.tgz                     30-Jan-2019 22:35            57414800
sh2-linux-muslfdpic-native.tgz.sig                 30-Jan-2019 22:35                 566
sh2eb-linux-musl-cross.tgz                         30-Jan-2019 22:35            65344489
sh2eb-linux-musl-cross.tgz.sig                     30-Jan-2019 22:35                 566
sh2eb-linux-musl-native.tgz                        30-Jan-2019 22:35            50271823
sh2eb-linux-musl-native.tgz.sig                    30-Jan-2019 22:35                 565
sh2eb-linux-muslfdpic-cross.tgz                    30-Jan-2019 22:35            65607615
sh2eb-linux-muslfdpic-cross.tgz.sig                30-Jan-2019 22:35                 566
sh2eb-linux-muslfdpic-native.tgz                   30-Jan-2019 22:35            58335869
sh2eb-linux-muslfdpic-native.tgz.sig               30-Jan-2019 22:35                 566
sh4-linux-musl-cross.tgz                           30-Jan-2019 22:35            64320646
sh4-linux-musl-cross.tgz.sig                       30-Jan-2019 22:35                 566
sh4-linux-musl-native.tgz                          30-Jan-2019 22:35            49755590
sh4-linux-musl-native.tgz.sig                      30-Jan-2019 22:35                 566
sh4eb-linux-musl-cross.tgz                         30-Jan-2019 22:35            65399852
sh4eb-linux-musl-cross.tgz.sig                     30-Jan-2019 22:35                 566
sh4eb-linux-musl-native.tgz                        30-Jan-2019 22:35            50180007
sh4eb-linux-musl-native.tgz.sig                    30-Jan-2019 22:35                 566
x86_64-linux-musl-cross.tgz                        30-Jan-2019 22:35            81517374
x86_64-linux-musl-cross.tgz.sig                    30-Jan-2019 22:35                 566
x86_64-linux-musl-native.tgz                       30-Jan-2019 22:35            56648402
x86_64-linux-musl-native.tgz.sig                   30-Jan-2019 22:35                 566
x86_64-linux-muslx32-cross.tgz                     30-Jan-2019 22:35            79336277
x86_64-linux-muslx32-cross.tgz.sig                 30-Jan-2019 22:35                 566
x86_64-linux-muslx32-native.tgz                    30-Jan-2019 22:35            56683695
x86_64-linux-muslx32-native.tgz.sig                30-Jan-2019 22:35                 566
x86_64-w64-mingw32-cross.tgz                       30-Jan-2019 22:35            94289953
x86_64-w64-mingw32-cross.tgz.sig                   30-Jan-2019 22:35                 566
x86_64-w64-mingw32-native.tgz                      30-Jan-2019 22:35            74505267
x86_64-w64-mingw32-native.tgz.sig                  30-Jan-2019 22:35                 566

Bugs discovered:

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

  1. Internal Compiler Error (ICE) building gfortran on MicroBlaze in GCC [link].
  2. Bad code generation targeting SuperH (SH-2 FDPIC) in GCC [link].
Bugs in software found by using these toolchains not shown.

Other notes:

  1. Hashes and cryptographic signatures4 are provided -- use HTTPS for greater security
  2. Toolchains are stripped of debug symbols (reduces size by a factor of 5)
  3. Versions may be bumped without notice (up or down, if bugs are discovered), or patches applied
  4. You may pin and reproduce any version of these toolchains yourself -- old ones are not archived
  5. Build logs are not provided as one can easily reproduce these toolchains
  6. Looking for x86_64-hosted cross compilers to target Win32? You're in luck: 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.
[2]: Based on the Alpine Linux image for size. Packaged with MacroMμ.
[3]: The only architecture currently missing Fortran is microblaze{,el} due to the aforementioned bug.
[4]: Validate them against this public key.
[5]: Rob Landley has i686-hosted toolchains here.
[6]: RISC-V support is untested and experimental. Stock GCC and dependencies (only change is musl).
[7]: To use native MinGW32 toolchains, append ;E:\x86_64-w64-mingw32-native\x86_64-w64-mingw32-native\bin (or similar) to %PATH%, remove all symlinks (/bin/*-cc, /usr) then copy ./include to ./TRIPLE/include
[8]: Clang/LLVM is on the TODO list. Contributions welcome.
[9]: Binutils tag 2.31.1 plus cumulative patches from binutils-2_31-branch as of 2018-10-21, due to this bug.
[10]: GCC OpenRISC patched forward from gcc-8_2_0-release to 45d0f2 from here (thanks smaeul).