Recently I've had a little more time to experiment
with guile-2.0 on mingw32. Following the advice of
Eli Zaretskii from
I compiled guile-2.0.9 without thread support,
and modified my demos so they no longer use theads
explicitly (they only use SDL timers).
I managed to go through the compilation process,
and (after modifying meta/Makefile.am according to Eli's
patch) to make install.
When I ran guile-2.0, I got the following message:
===
Throw without catch before boot:
Throw to key misc-error with args ("primitive-load-path" "Unable to find file ~S in load path" ("ice-9/boot-9") #f)Aborting.
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
Cannot exit gracefully when init is in progress; aborting.
===
Supplying GUILE_LOAD_PATH=/usr/share/guile/2.0 explicitly
helped a little, but only during the first run -- it
compiled some files from that directory and proceeded to
the prompt.
When I tired later, I got a lot of messages like
===
;;; compiling C:/MinGW/share/guile/2.0\ice-9\vlist.scm
;;; it seems C:/MinGW/share/guile/2.0\ice-9\vlist.scm
;;; is part of the compiler; skipping auto-compilation
===
and a single instance of the following message
===
;;; WARNING: compilation of C:/MinGW/share/guile/2.0\system\vm\vm.scm failed:
;;; ERROR: no code for module (system vm vm)
===
and it even displayed the welcome message, but when I tried
to (+ 2 3), I got:
===
While compiling expression:
ERROR: In procedure module-lookup: Unbound variable: compile
===
What turned out the most painful, however, was that I wasn't
able to run a program linked to libguile, not even the simplest
one, like
===
#include <stdio.h>
int main() {
scm_init_guile();
return 0;
}
===
which caused an abort with the following message:
===
Throw without catch before boot:
Throw to key stack-overflow with args (#f "Stack overflow" #f #f)Aborting.
This application has requested [...]
===
When I tried a similar piece of code, but with
scm_with_guile instead, I had the second part of
the message ("The application has requested ...")
in a "Microsoft Visual C++ Runtime Library" popup.
Exporting GUILE_LOAD_PATH didn't help at all
The Windows environment doesn't seem to be particularly
developer-friendly (or maybe I just don't know the right
tools), but I'd truly appreciate some help. (My goal is
to provide a binary distribution of the SLAYER framework
that I've presented before; it would allow programmers
to develop portable multimedia applications in Guile
Scheme. The development version of SLAYER is available
Also, it would be helpful if someone could point
to the git revision which is known to build under
windows.
Thanks in advance,
M.