# Installing Sage in ssh/Cluster from Source

March 22, 2017

I installed Sage from *source* in my Cluster ssh account and documented it step-by-step.

For a binarySimpler installation, but the resulting program will be suboptimal performance-wise. installation process which takes less disk space, click here.

- Downloading the Latest Sage Distribution
- Installing the Sage File
- Optional: Building Sage While Logged Out of ssh/Cluster
- Running Sage
- Full Disclosure
- Additional Resources

## Downloading the Latest Sage Distribution

First thing I needed to do is download the current Sage distribution.

To find the correct distribution, type the command **arch**Stands for *architecture*. into the ssh/Cluster command line

```
[hsu01@login001 ~]$ arch
```

The response I got was

```
x86_64
```

which means that the Linux distribution is 64-bit. If your distribution is 32-bit, it should say

```
i686
```

My chosen Sage distribution was named `sage-7.5.1.tar.gz`

, so I performed a **wget**Celebrity couple name for *world wide web* and *get*. on the download link

```
[hsu01@login001 ~]$ wget
http://www.cecm.sfu.ca/sage/src/sage-7.5.1.tar.gz
```

and got the following response:

```
'sage-7.5.1.tar.gz.1' saved [590642408/590642408]
```

## Installing the Sage File

Now it’s time to extract the file using **tarball**For *Tape ARchive*. These are so ad hoc! Also, you might need to download the latest distribution of tarball. .

```
tar zxvf sage-7.5.1.tar.gz.1
```

You should get a long response, with no error.

Now if you perform the **ls***List files*. LiSt files? List fileS?!? command,

```
[hsu01@login001 ~]$ ls
```

you should see the following folder appearing:

```
sage-7.5.1
```

Now **cd***Change directory*. into it

```
[hsu01@login001 ~]$ cd sage-7.5.1
```

and use the **make**For *make*! command

```
[hsu01@login001 sage-7.5.1]$ make
```

The response can take a *while*.

If, like me, `make`

takes long enough that you end up disconnecting with the server before the build is complete (returning a `broken pipe`

error), then follow this optional section.

## Optional: Building Sage While Logged Out of ssh/Cluster

What we’re going to do is to allow the making process to be running even if we’re logged out of the ssh/Cluster. To do so, we simply need to use the **screen** command.

```
[hsu01@login001 sage-7.5.1]$ screen
```

You should get a cleared commandline window as a response.

We will run `make`

inside this new `screen`

.

```
[hsu01@login001 sage-7.5.1]$ make
```

Then **detach** the screen by pressing

```
Ctrl-A, Ctrl-D
```

which should prompt the response:

```
[detached]
```

To resume seeing the making process, we scan simply type

```
[hsu01@login001 sage-7.5.1]$ screen -r
```

I let the process run overnight.

## Running Sage

In the Sage folder,

```
[hsu01@login001 sage-7.5.1]$ cd sage-7.5.1
```

you should be able to start running sage by typing

```
[hsu01@login001 sage-7.5.1]$ ./sage
```

## Full Disclosure

I was not able to take this process to completion, because the disk space of my Cluster account is 5 GB while installing from source takes 6 GB of disk space.