From early start of build log: g++ -c -O2 -pipe -march=native -o src/llvm/ext/llvm_ext.o src/llvm/ext/llvm_ext.cc `/usr/bin/llvm-config --cxxflags` cc -O2 -pipe -march=native -fPIC -c -o src/ext/sigfault.o src/ext/sigfault.c ar -rcs src/ext/libcrystal.a src/ext/sigfault.o This really should be $(tc-getCXX)/$(tc-getCC)/$(tc-getAR)
As a side note, threads=4 seems a wrong idea to. I'd suggest, from multiprocessing: $(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)"
Pushed as: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef80935bdf6325a68ed25e5a94ae602227402cd2 Proposed AR override upstream as: https://github.com/crystal-lang/crystal/pull/3950 Thanks for the report!