-
-
Notifications
You must be signed in to change notification settings - Fork 561
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cygwin metaticket: port Sage to Microsoft Windows (via Cygwin): stage 1 -- make building Sage automatic #6743
Comments
comment:1
The goal of this ticket is to port the standard Sage release to at least build and startup under Cygwin with GCC>=4.3.2. This ticket could be closed by any significant advanced in this direction that can be merged in. |
Attachment: buildnotes.txt |
This comment has been minimized.
This comment has been minimized.
comment:2
Attachment: trac-6743.patch.gz |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:10
Attachment: trac_6743-SCRIPTS-part1.patch.gz |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:12
Important remark. I got passed a lot of issues toward startup by copying csage.so to be /bin/csage.dll. Also, this program is very helpful: http://www.dependencywalker.com/ |
comment:13
After using the dependency thing above, and only importing half the sage library, I finally got to test out libsingular... and it works fine!
Another key point is one should increase the RAM available to cygwin by editing the registry, as explained in the Cygwin user's manual. The default 384MB limit with all cygwin installs is way way too small for sage. Make it a gig. My working sage install is /home/wstein/sage-4.1 on the winxp3 virtual machine. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:258
Replying to @kcrisman:
Given that it doesn't even pass prereq on Sage 5.8, I did indeed move that part to "Probably will not work" to avoid confusion. |
comment:259
Good point. I moved it back but with the caveat about |
comment:260
Apply trac_6743-doc.patch for a first attempt at a doc patch. This would satisfy my concern about libmpfr4 for now (in the meantime, the gcc4 package apparently has been "orphaned"). Is the only other issue here #14031? I sort of assumed that was the case in my patch, but of course that is just a draft and references to those things could be removed. |
comment:261
Replying to @kcrisman:
This is no longer necessary as the cygwin folks finally fixed the gcc 4.5.3 dependencies. See:
|
comment:262
So annoying! I totally waited for a while to do this in the hopes it would happen, and it happens just after I write this. That said, I still think most of this is worthwhile. What do you think of this updated patch? |
Attachment: trac_6743-doc.patch.gz |
comment:263
Remove the comment about |
comment:264
Also mention how one is supposed to run the
|
comment:265
Replying to @kcrisman:
FYI I succesfully built Sage on a 32 bits Windows XP (within a virtual machine). |
comment:266
Really? What is the new way to change the test directory? (This is still necessary at times to avoid spaces, as far as I know.)
I sort of purposely didn't, because I don't know how the bat one works. Maybe this ticket should depend on #14031?
Awesome! I guess my hardware even without a VM is just not powerful enough to avoid the eternal rebase. It's really weird. It is an older machine. |
comment:267
Replying to @kcrisman:
The whole concept of a "test directory" is gone. |
comment:269
Has anybody ever tried to make a binary Cygwin distribution with the usual command
|
comment:270
I didn't realize that was part of the change in the doctest framework - I only paid tangential attention to that :(
Not yet! (Or, at least not for quite a while - maybe William knows.) That would be for another ticket :) |
comment:271
Replying to @jdemeyer:
I tried and it seems to have worked fine. |
comment:272
Should we ship the info graphic with Sage (and display it on Cygwin)? XD |
comment:273
Replying to @jdemeyer:
I've begun working on Karl-Dieter patch and came to the conclusion I'd better clean up much more of source.rst which is quite messy. |
comment:274
Replying to @jpflori:
The archive was produced on 32 bits Windows XP within a virtual machine. |
comment:275
That's super-cool. Any chance for a Cygwin buildbot? |
comment:276
Replying to @jpflori:
If you build Sage with |
comment:277
Replying to @jdemeyer:
in some cases one has to rebase the whole Cygwin installation, and this can't be done from within Cygwin. So this requires more hacks, As a first step towards this one would need to automate rebasing at the time Sage is built. This is already not 100% trivial, as fork errors can manifest themselves in different ways. |
comment:278
I've put the updated source.rst patch a #14465. |
comment:279
Should this ticket be closed or do we want to do that only when there is a Cygwin buildbot? |
comment:280
I'd say we can close it. |
Changed reviewer from Jean-Pierre Flori, Dmitrii Pasechnik, Karl-Dieter Crisman, Mike Hansen, William Stein, Luis Tabera to Jean-Pierre Flori, Dmitrii Pasechnik, Karl-Dieter Crisman, Mike Hansen, William Stein, Luis Felipe Tabera Alonso |
The goal of this ticket is that a person can:
Install Cygwin and certain standard Cygwin packages (listed below).
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 (this is #13841), but if that happens as well, this will be great. Adding checks for all these prereqs, if necessary, will also be part of a future ticket.
More info
Most recent trials and a lot more archived 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.9.beta0
Cygwin prereqs
Here is what to install from Cygwin - use the usual stable binaries.
make
,perl
,m4
,binutils
gcc4-core
alone and then use the optional gcc-4.7.2 spkg (the standard gcc-4.6.3 spkg won't be able to compile ecl) orgcc4-core
andgcc4-g++
andgcc4-fortran
whose versions must matchlibmpfr4
for obscure reasons upstream that will likely be fixed soon - we hopelapack
,liblapack-devel
(this should automatically pull liblapack0, in fact, just installing liblapack-devel should already) - though we should be able to build ATLASOther instructions:
SAGE_TESTDIR
does not contain spaces.export SAGE_PORT=yes
(only needed the first time you issue make though, not after failures (memleak, rebase...) and relaunching the build)!Spkgs
Install the following spkgs ahead of time, e.g. in
SAGE_ROOT/spkg/standard/
before compilingPatches
You may have to add patches during the build of the Sage library. Once it fails, do (assuming you are in
SAGE_ROOT
)which will bring you back to your normal shell.
Patches currently needed for:
This should then work 'out of the box', modulo rebasing issues (see CygwinPort). See 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
Depends on #14031
Depends on #14465
CC: @dimpase @mwhansen @jpflori @kcrisman @simon-king-jena
Component: porting: Cygwin
Keywords: sd31 sd32
Reviewer: Jean-Pierre Flori, Dmitrii Pasechnik, Karl-Dieter Crisman, Mike Hansen, William Stein, Luis Felipe Tabera Alonso
Issue created by migration from https://trac.sagemath.org/ticket/6743
The text was updated successfully, but these errors were encountered: