| 25 Jan 2026 |
matthewcroughan | In that case I get configure: error: C compiler cannot create executables | 13:12:11 |
matthewcroughan | Beginning configuration for bash-5.3-release for aarch64-unknown-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in '/build/bash-5.3':
configure: error: C compiler cannot create executables
| 13:12:27 |
matthewcroughan | Maybe John Ericson would know how to fix it :D | 13:13:40 |
dramforever | do you have the full log | 13:13:51 |
dramforever | for the first one | 13:13:52 |
matthewcroughan | Yeah can put it on termbin, sec | 13:14:02 |
matthewcroughan | nix log /nix/store/946y9d3skwapp70wn66s6rvsfsypn9rc-bash-aarch64-unknown-linux-musl-5.3p9.drv | nc termbin.com 9999
https://termbin.com/z6eb
| 13:14:31 |
dramforever | yeah looks like c23-ness mismatch | 13:16:02 |
dramforever | i love cross compilation | 13:16:12 |
matthewcroughan | Ah you would hate native musl llvm stuff more | 13:19:06 |
dramforever | hmm, looks like bootstrapping will be "okay" | 13:24:00 |
dramforever | lemme give it a try | 13:24:06 |
matthewcroughan | Funny enough, system closures end up smaller if you cross compile instead of native | 13:24:32 |
matthewcroughan | like I have a small nixos closure built with gnu-llvm-musl, and it comes out smaller than the one build without the gnu cross stuff | 13:24:51 |
matthewcroughan | a few megabytes | 13:24:55 |
matthewcroughan | there's also an accidental linkage to the llvm toolchain that occurs in the native setup that adds 40M | 13:25:29 |
matthewcroughan | but even when that is corrected for, the cross-compiled setup produces smaller closures | 13:25:41 |
dramforever | oh, got tricked by parallel build | 13:30:48 |
dramforever | yeah it's compiling that with gcc aka $CC_FOR_BUILD | 13:31:07 |
dramforever | which is std=c23 | 13:31:09 |
dramforever | it's this line
gcc -c -DHAVE_CONFIG_H -DSHELL -I. -I.. -I.. -I../include -I../lib -I. -Wno-parentheses -Wno-format-security -g -DCROSS_COMPILING mkbuiltins.c
| 13:31:25 |
dramforever | has nothing to do with the aarch64-unknown-linux-musl-clang line | 13:31:43 |
dramforever | lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) does fix it | 13:36:15 |
dramforever | i'm guessing if you don't condition it on cross it breaks the native bootstrap instead? | 13:36:44 |
matthewcroughan | oooh yeah | 13:37:06 |
matthewcroughan | I see | 13:37:08 |
matthewcroughan | dramforever: next is iproute2 | 14:46:28 |
matthewcroughan | https://termbin.com/sz51 | 14:47:02 |
matthewcroughan | utils_math.c43:136:13: error: | #define SIOCGSTAMPNS use of undeclared identifier 'UINT_MAX'SI | 14:47:29 |
Mindavi | Missing include maybe? But would be strange vs normal compilation | 15:14:09 |