>
> So to summarize what's above :
> 1) I can help with a win32 port, but by cross-compiling, as I know it's
> efficient ;
> 2) in fact, helping with a win32 port would be a natural follow-up to my
> current work on the ARM port ;
> 3) but that won't be an easy ride (especially if I'm all alone as for
> the ARM port).
>
> Snark on #sage-devel

Thank you for the offer!

AFAICT, a major obstacle for cross compiling Sage on a Linux host for
a Windows target is Python. On the one hand, I believe Python uses
Python in its build process (possibly some intermediate stage built
just before, but nevertheless), so any cross-compilation environment
must have not only a C compiler, but also a Python interpreter. To set
up such an environment is not trivial (but has been done before, of
course). On the other hand, the Python language features "exceptions",
and to my knowledge this presents problems under MinGW (due to the C
library/runtime to be used), which are so big, that currently neither
official nor even unofficial Python distributions for MinGW (or MinGW-
w64) are actively maintained.

Of the Windows users in the Python community, everybody uses a Python
that is "natively compiled", but at least it seems that compiling a 64-
bit version under a 32-bit Windows is possible and vice versa (a kind
of cross-compilation ...), using one and the same MS Visual Studio (C/C
++ compiler) version. But jumping on that train would mean that each
and every C/C++ library used in Sage (including all of the Python
extension modules, like those produced via Cython) needs to be
compiled with a compiler producing something 100% compatible with that
Python *binary*. I don't know whether this exists (or is even
possible) on a Linux host, cross-compiling appropriate Windows DLLs
(where e.g. exceptions can be thrown "over" DLL boundaries).


Cheers,
Georg

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to