Okay, with GUILE_JIT_THRESHOLD set to -1 in the environment, I can build Guile under Cygwin. There are two test failures which probably reflect differences between newlib and glibc: ERROR: time.test: strptime: GNU %s format: strftime fr_FR.utf8 - arguments: ((system-error "strptime" "~A" ("Invalid argument") (22))) ERROR: time.test: strptime: GNU %s format: strftime fr_FR.iso88591 - arguments: ((system-error "strptime" "~A" ("Invalid argument") (22))) And that's that: Cygwin can support Guile 3.0 without JIT. It might be a good idea to force this variable on in "configure" when building under Cygwin.