Microsoft Windows Support
Stratego -- Strategies for Program Transformation
StrategoXT
On Microsoft Windows
StrategoXT requires Cygwin.
In
StrategoXT 0.9.4 all serious problems on Microsoft Windows/Cygwin are solved.
Standard tarball distributions now can be installed without applying any patches.
No modifications of the srts are required and memory usage has been reduced considerably.
The solution to the issue was an optimization of the choice implementation.
The Stratego Runtime now allocates the jmp_buf storage on the heap and increases the size of the storage when necessary.
This has been implemented by
Eelco Dolstra.
Microsoft Windows+Cygwin support is not yet verified in the
daily build?.
ATerm library
- Installation of the ATerm library 2.0.x is no problem if configured --with-gcc.
SGLR
- Installation of toolbus-lib, pt-support and SGLR is no problem.
- check succeeds.
PGEN
- asf-support 1.0: no problem
- asc-support 1.6: no problem
- sdf-support 1.0: no problem
- pgen 1.6: no problem (sdf2table is a shell-script)
The following information does not concern the latest sources.
It is a log of the problems we encountered in the past.
The
Stratego Run Time System ( SRTS ) installs fine, but bootstrapped C sources compiled with the runtime
will cause a segementation fault on any invocation of a procedure in the SRTS.
--
MartinBravenboer - 17 May 2003
Cygwin doesn't like this:
srts/src/stratego-choice.c :
#define JMPBUFS 1638400
jmp_buf jmpbufs[JMPBUFS];
The number of JMPBUFS is too large. Currently I'm using 563840 for testing purposes, but this might be a problem in heavy Stratego programs (abox2text for example).
Does anybody know what might be the reasoning behind disallowing such large arrays on Microsoft Windows/Cygwin?
--
MartinBravenboer - 19 May 2003
More complex Stratego program run if compiled with the adapted SRTS. implode-asfix has been compiled to an .exe. The first step towards
Microsoft Windows Support is a binary distribution of sdf2. See
this message on the
mailing list.
--
MartinBravenboer - 19 May 2003
StrategoXT 0.9.1 compiles on cygwin, after changing the above (stratego-choice.c) and the removal of the asource tool. Problem that occurs now is that in the
XTC repository tools occur as follows: (Tool("meta-explode.exe"),[("0.9.1","/opt/strategoxt/bin/meta-explode.exe")]), so with the extensions of executables.
--
RobVermaas - 12 Jun 2003
bootstrap scripts (or shell scripts without an extension in general) need to have a '#!' as first characters to be executable on cygwin.
--
RobVermaas - 16 Jun 2003
XTC tools are registered properly now. Current
LatestSources? compile on cygwin, but only if you have the right permissions (it fails at boxenv, when running 'latex boxenv.ins').
Don't be surprised if memory-usage goes up to 800 MB sometimes. We should do somthing about this.
--
RobVermaas - 16 Jun 2003