Hi Peter, Peter TB Brett writes: > It is not currently possible to compile Guile 2.0.11 for Windows x64 > (in particular 64-bit Windows running on the x86-64 arch). > > Most operating systems' C libraries for x86-64 use an "LP64" model, > where sizeof(long int) == sizeof(void *) == 8. > > However, for backwards-compatibility reasons, Windows uses an "LLP64" > model, where sizeof(long long int) == sizeof(void *) == 8 and > sizeof(long int) == 4. > > Guile 2.0.11 can't cope with this; the libguile build fails due to > this code: I've attached a patch that attempts to address this issue by using 'long' as the scm_t_inum type. So, fixnums will be limited to 30 bits on LLP64 systems. We can't easily avoid this while using GMP's mpz API, since the mpz_*_si functions except longs and there are no analogous functions that accept larger C integer types. Can you test this patch and report back? Thanks, Mark