Download and Installation

OSCAR is currently under heavy development, so all parts change continuously. If you encounter any trouble while following the steps outlined below, feel free to contact us via GitHub discussion, our issue tracker, or by sending an email to oscar@mathematik.uni-kl.de.

Step 1: Install prerequisites

The following instructions assume that you are at least somewhat familiar with using a terminal interface.

Windows Please install Windows Subsystem for Linux (WSL) following the official instructions. You should now have an App "Ubuntu" in your start menu (run "explorer.exe ." in the Ubuntu terminal to open the current folder in the Windows File Explorer). You can now follow the instructions for Ubuntu.
macOS If you are using macOS 10.12 or newer, you need to install the Xcode command line tools, as explained in the following instructions.
  1. Launch a Terminal and copy and paste the command xcode-select --install, then press enter.
  2. A window will appear asking you: The xcode-select command requires the command line developer tools. Would you like to install the tools now?. Confirm this by clicking Install.
  3. Wait for this to complete; it needs to download about 130 MB of data.
  4. You can verify that everything worked verifying the /Library/Developer/CommandLineTools/usr/bin/ exists and contains executables such as clang and clang++, the C and C++ compiler.
Ubuntu or Debian If you are using Ubuntu 18.04 "Bionic" or newer, or Debian 10 "Buster" or newer, proceed as follows: Enter these commands into a terminal (this will prompt for your password and requires that you have permissions to administer your computer).
sudo apt-get update
sudo apt-get install build-essential
Fedora If you are using Fedora 28 or newer, enter the following commands into a terminal (this will prompt for your password and requires that you have permissions to administer your computer).
sudo dnf install gcc-c++ make
Other or older operating systems supported by Julia We do not provided official support for other such systems at this time. But if you wish to try anyway, you will need to install at least GNU make, and a fairly recent C++ compiler supporting the C++17 standard. Suitable compilers include
  • GNU C/C++ compiler (gcc) version 7 or newer,
  • Clang C/C++ compiler version 5 or newer,
  • Intel C/C++ Compiler (icc) version 19.0 or newer.

Step 2: Install Julia

OSCAR requires at least Julia 1.6.0, but we recommend running it with the latest stable Julia release, which is 1.8.5 at the time this is written.

WARNING:
  • Windows users should not install the Julia version for Windows. Instead, please install the Linux version inside Windows Subsystem for Linux (WSL).
  • Linux and macOS users should generally not install the Julia version provided by their package manager (e.g., `apt`, `pac`, `dnf`, `homebrew`, ...), as in many cases, these Julia version are either outdated, or crippled, or both.

There are several ways to install Julia:

  1. By downloading it from the Julia homepage, and following their platform specific instructions.

  2. The juliaup and JILL projects are external packages which allow installing and updating Julia – this is in particular handy for experienced users who may want to install multiple Julia versions in parallel; but also for beginners it can be convenient as it allows updating the installed Julia version quite easily.

Step 3: Install OSCAR

To then install OSCAR, just start julia and run

using Pkg
Pkg.add("Oscar")

This will run for a few minutes. From then on, you can start Julia, then type using Oscar and press enter to use OSCAR. The result should look something like this:

julia> using Oscar
 -----    -----    -----      -      -----
|     |  |     |  |     |    | |    |     |
|     |  |        |         |   |   |     |
|     |   -----   |        |     |  |-----
|     |        |  |        |-----|  |   |
|     |  |     |  |     |  |     |  |    |
 -----    -----    -----   -     -  -     -

...combining (and extending) ANTIC, GAP, Polymake and Singular
Version 0.11.3 ...
 ... which comes with absolutely no warranty whatsoever
Type: '?Oscar' for more information
(c) 2019-2023 by The OSCAR Development Team

julia>

Please have a look at

for some examples (as Jupyter notebooks).

Getting a GAP prompt

If you are a GAP user and have installed loaded OSCAR in a Julia session as described above, you can at any time switch back and forth between the Julia prompt and a GAP prompt, by using the command GAP.prompt():

julia> x = 1
1

julia> GAP.prompt()
gap> Julia.x;
1
gap> G := SymmetricGroup(3);
Sym( [ 1 .. 3 ] )
gap> quit;   # or press Ctrl-D

julia> GAP.Globals.G
GAP: Sym( [ 1 .. 3 ] )

Using IJulia for notebooks

IJulia can be installed by following its installation page. Note that in some cases, IJulia must be “built” explicitly, see the trouble shooting page. If you try to open an existing notebook (stored in a “.ipynb” file), it might refer to an older Julia version, resulting in a “Kernel error”; the solution is then to select a different kernel from the menu.

If you are using OSCAR in the Windows Subsystem for Linux, you will require a browser in your subsystem. This can be a probem as the default subsystem is Ubuntu and Ubuntu installs browsers via snap which is disabled for subsystems. To circumvent this problem, please see how to install browsers via deb.

Edit this page Contact Imprint Privacy policy © 2018-2023 The OSCAR Team