@@ -24,6 +24,8 @@ you extracted the binary archive and type:
2424
2525 ./sage
2626
27+ (Note that the first run will take more time, as Sage needs to get itself ready.)
28+
2729If you downloaded the [ sources] ( https://www.sagemath.org/download-source.html ) ,
2830please read below on how to build Sage and work around common issues.
2931
@@ -34,21 +36,18 @@ or ask on [ask.sagemath.org](https://ask.sagemath.org).
3436Contributing to Sage
3537--------------------
3638
37- If you'd like to contribute to Sage, be sure to read the
39+ If you'd like to contribute to Sage, we strongly recommend that you read the
3840[ Developer's Guide] ( https://doc.sagemath.org/html/en/developer/index.html ) .
3941
4042Supported Platforms
4143-------------------
4244
43- Sage fully supports several Linux distributions, recent versions of
44- Mac OS X, Windows (using virtualization), as well as a number of
45- Solaris and OpenSolaris releases.
46-
47- Ports are in progress to some other, less common platforms. The list of
48- supported platforms and their current statuses are given in [ our wiki] ( https://wiki.sagemath.org/SupportedPlatforms ) .
45+ Sage fully supports all major Linux distributions, recent versions of
46+ MacOS, and Windows (using Cygwin or using virtualization).
4947
50- If you are interested in helping port Sage to a new platform, please let
51- us know at the [ sage-devel mailing list] ( https://groups.google.com/group/sage-devel ) .
48+ We highly appreciate contributions to Sage that fix portability bugs
49+ and help port Sage to new platforms; let us know at the [ sage-devel
50+ mailing list] ( https://groups.google.com/group/sage-devel ) .
5251
5352Quick Instructions to Build from Source
5453---------------------------------------
@@ -69,47 +68,67 @@ files installed
6968
70691 . Make sure you have the dependencies and 5 GB of free disk space
7170
72- * __ All Linux versions:__ gcc, make, m4, perl, ranlib, git, and tar (a
73- matching set of gcc, gfortran and g++ will avoid the compilation
74- of Sage-specific compilers) . It should also be possible to use clang/clang++,
71+ * __ All Linux versions:__ gcc, gfortran, g++ (a matching set of these three
72+ will avoid the compilation of Sage-specific compilers - unless they are too old),
73+ make, m4, perl, ranlib, git, and tar . It should also be possible to use clang/clang++,
7574 however this is less well-tested.
7675
7776 * __ Fedora or RedHat systems:__ the perl-ExtUtils-MakeMaker package.
7877 (install these using your package manager)
7978
80- * __ OS X :__
79+ * __ MacOS :__
8180 * Make sure you have installed the most recent version
8281 of Xcode which you can install for free from the App Store.
8382 * You also need to install the "command line tools". When
84- using OS X Mavericks, after installing Xcode, run
83+ using Mavericks, after installing Xcode, run
8584 ` xcode-select --install ` from a terminal window:
8685 Then click "Install" in the pop-up window.
87- When using OS X Mountain Lion or earlier, you need to install the
86+ When using Mountain Lion or earlier, you need to install the
8887 command line tools from Xcode: run Xcode; then from the File
8988 menu, choose "Preferences", then the "Downloads" tab, and then
9089 "Install" the Command Line Tools. You might also have Homebrew or
9190 a similar "Apple's missing package manager" system installed, with
9291 and libraries such gfortran, gmp, etc installed. (However, this
93- is still experimental as of May 2019 ).
92+ is still experimental as of April 2020 ).
9493
9594 * __ Other platforms:__ See detailed instructions below.
9695
97961 . It might be desirable, it terms of faster building and better portability,
9897 to install, as system packages, an ever increasing [ list of Sage packages] ( https://trac.sagemath.org/ticket/27330 )
99- which otherwise might have to be built. The following is a list of Sage packages
100- "replaceable" by system's packages as of Sage release 8.8:
101- ` bzip2 ` , ` curl ` , ` cmake ` , ` gcc/clang ` , ` gf2x ` , ` gfortran ` (usually part of ` gcc ` installation),
102- ` git ` , ` gmp ` , ` libffi ` , ` patch ` , ` pcre ` , ` perl_term_readline_gnu ` , ` xz/lzma ` , ` yasm ` , ` zeromq ` , ` zlib ` .
103- Details and names of system packages containing these are system-dependent. E.g. on Debian
104- ` bzip2 ` lives in ` libbz2-dev ` . More details on this are in Installation manual.
98+ which otherwise might have to be built.
99+ Details and names of system packages containing these Sage ones are system-dependent. E.g. on Debian
100+ ` bzip2 ` lives in ` libbz2-dev ` . More details on this are in Installation manual,
101+ and also printed by the ` ./configure ` script (see below).
105102
1061031 . Extract the tarball
107104
108105 tar zxvf sage-*.tar.gz
109106
110- 1 . cd into the Sage directory and type make
107+ 1 . cd into the Sage directory and
111108
112109 cd sage-*/
110+
111+ 1 . Optionally, review the configuration options, which includes
112+ many optional packages:
113+
114+ ./configure --help
115+
116+ 1 . type ./configure
117+
118+ ./configure
119+
120+ 1 . At the end of a successful ./configure run, you may see messages
121+ recommending to install extra system packages using your package
122+ manager. Only the most recent releases of your distribution will
123+ have all of these packages. If you choose to install the system
124+ packages, a re-run of ./configure will test whether the versions
125+ installed are usable for Sage; if they are, this will reduce the
126+ compilation time and disk space needed by Sage. The usage of packages
127+ may be adjusted by ` ./configure ` parameters (check out the output of
128+ ` ./configure -h ` )
129+
130+ 1 . Type make
131+
113132 make
114133
115134 That's it! Everything is automatic and non-interactive. The build
@@ -146,18 +165,16 @@ More Detailed Instructions to Build from Source
146165
147166 * __ Linux:__ See quick instructions above.
148167
149- * __ OS X :__ (a.k.a __ MacOS __ ) Make sure you have a recent Xcode version.
168+ * __ MacOS :__ Make sure you have a recent Xcode version.
150169 If you don't, go to https://developer.apple.com/ ,
151170 sign up, and download the free Xcode package. Usually, Xcode's command line
152171 tools suffice to build Sage, although several times new releases of Xcode broke this.
153- Only OS X >= 10.4 is supported, and (as of May 2019) we only test Sage on OS X >= 10.6.
154-
155- * __ Solaris and OpenSolaris:__ Building Sage on these platforms is more
156- tricky than on Linux or OS X. For details on how to build Sage on
157- these platforms, see [ our wiki] ( https://wiki.sagemath.org/solaris ) (outdated as of May 2019).
172+ Only MacOS >= 10.4 is supported, and (as of May 2019) we only test Sage on MacOS >= 10.6.
158173
159174 * __ Windows:__ [ Download and install VirtualBox] ( https://www.virtualbox.org/wiki/Downloads ) ,
160- and then download the [ Sage virtual appliance] ( https://wiki.sagemath.org/SageAppliance ) .
175+ and then download the [ Sage virtual appliance] ( https://wiki.sagemath.org/SageAppliance ) . Or install
176+ [ Cygwin] ( http://cygwin.com ) and follow [ Installation Guide] ( https://doc.sagemath.org/html/en/installation )
177+ and [ Wiki] ( https://trac.sagemath.org/wiki/Cygwin64Port ) .
161178
162179 * __ NOTE:__ On some operating systems, it might be necessary to install
163180 gas/as, gld/ld, gnm/nm. On most platforms, these are automatically
@@ -235,16 +252,6 @@ More Detailed Instructions to Build from Source
235252 ImageMagick tools (e.g. the "convert" command) installed since some
236253 plotting functionality benefits from it.
237254
238- 1 . Optional: Read this if you are intending to run a Sage notebook
239- server for multiple users. For security (i.e., to run
240- ` notebook(secure=True) ` ) you want to access the server using the
241- HTTPS protocol. First, install OpenSSL and the OpenSSL development
242- headers on your system if they are not already installed. Then
243- install pyOpenSSL by building Sage and then typing
244- ` ./sage -i pyopenssl ` .
245- Note that this command requires internet access. Alternatively,
246- ` make ssl ` builds Sage and installs pyOpenSSL.
247-
248255Troubleshooting
249256---------------
250257
@@ -283,7 +290,7 @@ by running `./configure` with option `--without-system-gcc`.
283290There are some known problems with old assemblers, in particular when
284291building the ECM package. You should ensure that your assembler
285292understands all instructions for your processor. On Linux, this means
286- you need a recent version of binutils; on OS X you need a recent version
293+ you need a recent version of binutils; on MacOS you need a recent version
287294of Xcode.
288295
289296Directory Layout
@@ -415,15 +422,15 @@ install. You can make changes to documentation, source, etc., and very
415422easily package the complete results up for redistribution just like we
416423do.
417424
418- 1 . To make your own source tarball of Sage, type:
425+ 1 . To make a binary distribution with your currently installed packages,
426+ visit [ sagemath/binary-pkg] ( https://github.com/sagemath/binary-pkg ) .
427+
428+ 1 . (** Obsolete, probably broken** ) To make your own source tarball of Sage, type:
419429
420430 sage --sdist
421431
422432 The result is placed in the directory ` dist/ ` .
423433
424- 2 . To make a binary distribution with your currently installed packages,
425- visit [ sagemath/binary-pkg] ( https://github.com/sagemath/binary-pkg ) .
426-
427434
428435Changes to Included Software
429436----------------------------
0 commit comments