#6743: cygwin metaticket: port Sage to Microsoft Windows (via Cygwin): stage 1
--
make building Sage automatic
-------------------------------+--------------------------------------------
Reporter: was | Owner: was
Type: enhancement | Status: new
Priority: major | Milestone: sage-5.6
Component: cygwin | Resolution:
Keywords: sd31 sd32 | Work issues:
Report Upstream: N/A | Reviewers:
Authors: | Merged in:
Dependencies: | Stopgaps:
-------------------------------+--------------------------------------------
Description changed by kcrisman:
Old description:
> The goal of this ticket is that a person can:
>
> 1. Install Cygwin and certain standard Cygwin packages (listed below).
>
> 2. Extract the Sage tarball and type "`make`"
>
> and have everything build automatically with no errors. The goal is
> '''not''' that the resulting build works or Sage starts up. That will be
> for a later ticket. Adding checks for all these prereqs will also be
> part of a future ticket.
>
> ----
>
> == Most recent trials and a lot more status detail is at
> http://trac.sagemath.org/sage_trac/wiki/CygwinPort ==
>
> == Current instructions (work on Windows XP and Windows 7 with latest
> Cygwin) ==
> As below with Sage 5.5.rc0
>
> === Cygwin prereqs ===
> Here is what to install from Cygwin - use the usual stable binaries.
> * `file`, `patch`
> * `liblapack`, `liblapack0`, `liblapack-devel`
> * `libiconv`, `openssl`, `openssl-devel`
> * `libgc-devel` - although it's not needed to build, it is to start
> * `libncurses-devel`
> * `make`, `perl`, `m4`
> * Use all `gcc` and `g++` and `fortran`; the versions '''must''' match,
> and `gcc4` is the type we want
> Other instructions:
> * Just to make sure, avoid building in home directories of Windows
> domain users, as they are treated in a special way by Windows (and
> Cygwin).
> * It's a good idea that all the pathnames do not contain capital letters
> (Windows is case-insensitive in this way, unlike Unices), spaces, etc.
> * Similarly, do not ''test'' without making sure that `SAGE_TESTDIR`
> does not contain spaces.
> * Also, '''don't forget to''' {{{export SAGE_PORT=yes}}}!
>
> We need to add a test for '''all''' of the above packages to the prereq
> script for Cygwin before making the Cygwin port official.
>
> === Spkgs ===
> Install the following spkgs ahead of time, e.g. in
> `SAGE_ROOT/spkg/standard/` before compiling
> * #11635 (NTL)
> * #13324 (ECL, but *not* including #9167 yet)
> * #13137 (MPIR)
> * #13755 (linbox, on Win 7)
> * #13325 (eclib)
> * #13319 (Python, based on #13631)
> * #13799 (cvxopt)
>
> === Patches ===
> You will have to add patches during the build of the Sage library. Once
> it fails, do (assuming you are in `SAGE_ROOT`)
> {{{
> ./sage -sh
> cd devel/sage
> <import the patches - you may need to make ~/.hgrc>
> cd ../..
> ./sage -b
> <assuming all goes well here>
> touch spkg/installed/sage-5.5.rc0 # or whatever the version number is
> exit
> }}}
> which will bring you back to your normal shell.
>
> Patches currently needed for:
> * #13325
> * #13802
> * #13806 (on Win 7, at least)
>
> This should then work 'out of the box', modulo rebasing issues (see
> [wiki:CygwinPort]). See [wiki:CygwinPort the wiki] for other details as
> well.
>
> ----
>
> There is (or was) a very old binary of Cygwin available here:
>
> http://sage.math.washington.edu/home/wstein/tmp/sage-4.1-cygwin-i686-CYGWIN_NT-5.1.tar.gz
New description:
The goal of this ticket is that a person can:
1. Install Cygwin and certain standard Cygwin packages (listed below).
2. Extract the Sage tarball and type "`make`"
and have everything build automatically with no errors. The goal is
'''not''' that the resulting build works or Sage starts up. That will be
for a later ticket. Adding checks for all these prereqs will also be part
of a future ticket.
----
== Most recent trials and a lot more status detail is at
http://trac.sagemath.org/sage_trac/wiki/CygwinPort ==
== Current instructions (work on Windows XP and Windows 7 with latest
Cygwin) ==
As below with Sage 5.5.rc0
=== Cygwin prereqs ===
Here is what to install from Cygwin - use the usual stable binaries.
* `file`, `patch`
* `liblapack`, `liblapack0`, `liblapack-devel`
* `libiconv`, `openssl`, `openssl-devel`
* `libgc-devel` - although it's not needed to build, it is to start
* `zlib-devel` - apparently needed on Win 7
* `libncurses-devel`
* `make`, `perl`, `m4`
* Use all `gcc` and `g++` and `fortran`; the versions '''must''' match,
and `gcc4` is the type we want
Other instructions:
* Just to make sure, avoid building in home directories of Windows domain
users, as they are treated in a special way by Windows (and Cygwin).
* It's a good idea that all the pathnames do not contain capital letters
(Windows is case-insensitive in this way, unlike Unices), spaces, etc.
* Similarly, do not ''test'' without making sure that `SAGE_TESTDIR` does
not contain spaces.
* Also, '''don't forget to''' {{{export SAGE_PORT=yes}}}!
We need to add a test for '''all''' of the above packages to the prereq
script for Cygwin before making the Cygwin port official.
=== Spkgs ===
Install the following spkgs ahead of time, e.g. in
`SAGE_ROOT/spkg/standard/` before compiling
* #11635 (NTL)
* #13324 (ECL, but *not* including #9167 yet)
* #13137 (MPIR)
* #13755 (linbox, on Win 7)
* #13325 (eclib)
* #13319 (Python, based on #13631)
* #13799 (cvxopt)
=== Patches ===
You will have to add patches during the build of the Sage library. Once
it fails, do (assuming you are in `SAGE_ROOT`)
{{{
./sage -sh
cd devel/sage
<import the patches - you may need to make ~/.hgrc>
cd ../..
./sage -b
<assuming all goes well here>
touch spkg/installed/sage-5.5.rc0 # or whatever the version number is
exit
}}}
which will bring you back to your normal shell.
Patches currently needed for:
* #13325
* #13802
* #13806 (on Win 7, at least)
This should then work 'out of the box', modulo rebasing issues (see
[wiki:CygwinPort]). See [wiki:CygwinPort the wiki] for other details as
well.
----
#13841 is a followup ticket for Sage to ''start'' as well automatically.
Hopefully it won't be necessary, but the past teaches us that often Sage
would build, but not start, so that's a little insurance.
----
There is (or was) a very old binary of Cygwin available here:
http://sage.math.washington.edu/home/wstein/tmp/sage-4.1-cygwin-i686-CYGWIN_NT-5.1.tar.gz
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6743#comment:71>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.