![]() at least mips support is broken, but microblazed and possibly other archs work. while building mips the following error was encountered: Mode = sf\|df Suffix = si\|2\|3 /tmp/musl-cross-make/gcc-4.9.3/build0/./gcc/xgcc -B/tmp/musl-cross-make/gcc-4.9.3/build0/./gcc/ -B/tmp/musl-cross-make/output/mips-linux-musl/bin/ -B/tmp/musl-cross-make/output/mips-linux-musl/lib/ -isystem /tmp/musl-cross-make/output/mips-linux-musl/include -isystem /tmp/musl-cross-make/output/mips-linux-musl/sys-include -g -O2 -O0 -g0 -minterlink-mips16 -O2 -g -O2 -O0 -g0 -minterlink-mips16 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -Dinhibit_libc -fPIC -I. -I. -I../.././gcc -I../../../libgcc -I../../../libgcc/. -I../../../libgcc/../gcc -I../../../libgcc/../include -DHAVE_CC_TLS -o subsf3.o -MT subsf3.o -MD -MP -MF subsf3.dep subsf3 -c ../../../libgcc/config/hardfp.c -fvisibility=hidden -DHIDE_EXPORTS -Wno-missing-prototypes xgcc: error: subsf3: No such file or directory make[3]: *** [subsf3.o] Error 1 this seems like a bug in a shell command that's invoked during the build, possibly a sed command using GNU-only syntax. |
||
---|---|---|
patches | ||
sources | ||
steps | ||
.gitignore | ||
config.mak.dist | ||
Makefile | ||
README.md |
musl-cross-make
This is a quick and simple makefile-based alternative for producing musl-based cross compilers. In addition to the build system, it provides a number of patches, including:
-
Updated versions of the musl target patches going into upstream GCC
-
Static-PIE support and enabling PIE as default
-
Fixes for SH-specific bugs and bitrot in GCC
-
Support for J2 Core CPU target in GCC & binutils
The current focus is on SH2/J2 Core targets and NOMMU (where PIE is mandatory) since these are not adequately supported by other musl cross-compiler toolchain build systems.
Usage
To build, copy the provided config.mak.dist to config.mak and edit then run make. Parallel builds are supported. The host needs to have suitable gmp/mpfr/mpc libraries installed in the standard library path, or you can add the appropriate --with options to GCC_CONFIG.
At present only GCC 5.2.0 and Binutils 2.25.1 are supported. Backporting of patches is needed to support other versions.
The included patches should also be usable with Gregor's original musl-cross or other build systems, if desired.