This page is mostly intended for those wishing to install GAP and Sage in Linux.

There are many options for installing Sage. I'll assume you have some common Linux distribution such as Ubuntu. As is common in these distributions, any popular program will be available in the Ubuntu repositories. Thus, you could simply open your program manager and search for Sage, click "install" (or whatever) and be done with it. I don't recommend doing this if you're planning on using Sage seriously. Sage is under active development, is updated very frequently, and Ubuntu's repository version is a bit out-of-date.

This leaves two options. You can download the current release of Sage for your specific operating system + architecture or you can compile Sage yourself.

**Downloading a Pre-Compiled Binary**

This instruction set is current as of October 14, 2010.

hilljb@tarski:~$ sudo cp sage* /opt

hilljb@tarski:~$ cd /opt

hilljb@tarski:/opt$

hilljb@tarski:/opt$ sudo tar --lzma -xvf sage-*

hilljb@tarski:/opt$ sudo tar -zxvf sage-*

hilljb@tarski:/opt$ sudo chown -R your-user-name-here sage-*

hilljb@tarski:/opt$ cd sage-4.5.3

hilljb@tarski:/opt/sage-4.5.3$ ./sage

----------------------------------------------------------------------

| Sage Version 4.5.3, Release Date: 2010-09-04

| Type notebook() for the GUI, and license() for information.

----------------------------------------------------------------------

sage:

**Compiling Your Own Sage**

Instructions for this are included in the README.txt located at the download page for Sage sources. All of the dependencies for Ubuntu (e.g., gcc, g++, m4, perl, ranlib, etc.) are either already installed in Ubuntu or are in the Ubuntu repositories (so they essentially need to be turned on). If you're at CU-Boulder and have questions about this, feel free to either e-mail me or stop by my office (MATH340).

Depending on your machine's capabilities, this can take a while. My server compiles Sage in about an hour, while my single-core laptop does it in about 7 hours.

**Installing Sage Combinat**

Sage Combinat is a collection of additions to Sage that are in testing phase and are focused around algebraic combinatorics. It is based on a Mercurial queue that modifies an existing collection of Sage libraries. For Sage Combinat to work, you will need an up-to-date version of Sage (otherwise, the libraries are too far out of date). So, either install a new version of Sage following the instructions above (do not install from the Ubuntu repositories), or update your sage:

hilljb@tarski:/opt/sage-4.5.3$ ./sage -upgrade

Then, issuing the following command will download the Sage Combinat queue and install it. This may take some time.

hilljb@tarski:/opt/sage-4.5.3$ ./sage -combinat install

After that is done, you can switch between Sage and Sage Combinat by rebuilding Sage with either the main Sage libraries or with the Combinat queue:

hilljb@tarski:/opt/sage-4.5.3$ ./sage -b main

hilljb@tarski:/opt/sage-4.5.3$ ./sage -b combinat

One can update the Combinat queue (get the latest patches) by using the command

hilljb@tarski:/opt/sage-4.5.3$ ./sage -combinat update

My goal for this section, which I should probably move to another page when I have time, is to document my contributions to Sage. One of my goals is to help make Sage more usable for both deterministic and random methods in large domain permutation groups. To be brief, Sage and GAP view permutation actions differently, and much of my work here is in trying to bring those two views into alignment. The following are currently implemented in Sage Combinat for calculations in permutation groups.

I've also been working on some shell scripting for Sage installations, mainly to determine OS/hardware information upon installation failure.

© 2011 Jason B. Hill. All Rights Reserved.