Documentation contents

Getting Started · Installation

macOS

There are three options, in order of preference: compiling with the Mac compiler, compiling with Homebrew, and Docker. The instructions for compiling with the Mac compiler follow on this page.

Compiling with the Mac compiler

This uses only what Apple provides: the C++ compiler, make, git and bison from Apple's Command Line Tools, and the readline library built into macOS. You do not need Homebrew, MacPorts or the full Xcode app.

These instructions follow tests by David Vogan in October 2026 with Apple's Command Line Tools 27.0. They need a copy of atlas from October 13, 2026 or later (see Mac pitfalls).

Quick version

xcode-select --install
git clone https://github.com/jeffreyadams/atlasofliegroups.git
cd atlasofliegroups
make -j8 atlas
cd atlas-scripts
../atlas all.at

The steps below explain each line and what to do if something goes wrong.

1. Install the Command Line Tools

Open the Terminal app (in Applications → Utilities) and type:

xcode-select --install

If they are already installed you will get a message saying so. (On a new Mac, the commands git, make and g++ exist but only pop up a dialog offering to install these tools.)

2. Download the source code using git

Choose a directory to store the source code, navigate there in Terminal, then type:

git clone https://github.com/jeffreyadams/atlasofliegroups.git
cd atlasofliegroups

This creates a subdirectory atlasofliegroups and stores the files there. If you are not familiar with git see Help with git.

3. Compile

In the atlasofliegroups directory:

make -j8 atlas

Type make atlas, not just make: plain make also builds the older program Fokko, which does not work with the Mac's readline library and stops with error: no member named 'entries' in 'HISTORY_STATE'. (-j8 compiles 8 files at a time.) You will see many compiler warnings; these are expected. If all goes well you will have the program atlas in the atlasofliegroups directory.

Most people only need atlas. If you also want Fokko, build it without command-line editing:

make Fokko readline=false

4. Test it

cd atlas-scripts
../atlas all.at

Atlas loads its library and shows the atlas> prompt. Try:

atlas> set G=Sp(4,R)
Variable G: RealForm
atlas> trivial(G)
Value: final parameter(x=10,lambda=[2,1]/1,nu=[2,1]/1)
atlas> dimension(G)
Value: 10
atlas> quit

The up-arrow should recall previous commands, and the Tab key should complete names. Congratulations! Go on to After compiling for the next steps.

Mac pitfalls

  • The compiler. On a Mac the command g++ is not GNU g++ but Apple's clang compiler under another name. The Makefile uses g++ -std=c++14, so it gets Apple clang, which works well; there is no need to install another compiler.
  • readline. macOS includes a library called libreadline, but it is really a different library (libedit) in disguise. Since October 2026, atlas works with it: the up-arrow history and Tab completion work. Fokko does not (see step 3).
  • bison. macOS includes bison version 2.3 (from 2006). Copies of atlas from before October 13, 2026 need a newer bison, and with Apple's the build stops with parser.y:62.9-16: syntax error, unexpected identifier, expecting string followed by 'parser.tab.h' file not found. Run git pull origin master to get the current version.
  • Old settings from earlier instructions. Earlier versions of these instructions used MacPorts or Homebrew and had you add lines like export rl_libs="-lreadline -lcurses -L/opt/local/lib" or export CPATH=... to ~/.zprofile (or .profile, .zshrc, .cshrc). Delete those lines and open a new Terminal window, so that the build uses the Mac's own readline.

To start a build over from scratch, run make clean. If you cannot get readline to work at all, make clean followed by make atlas readline=false builds atlas without it (no command history or tab completion).

After compiling

We recommend installing a short atlas command that you can run from any directory. On a Mac, ~/bin does not exist and is not on your PATH by default, so first:

mkdir -p ~/bin
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zprofile

Then open a new Terminal window, go to the atlasofliegroups directory, and type:

printf '#!/bin/sh\nexec "%s/atlas" --path="%s/atlas-scripts" all.at "$@"\n' "$PWD" "$PWD" > ~/bin/atlas
chmod +x ~/bin/atlas

This puts a small script ~/bin/atlas that runs the program and automatically loads all.at from the atlas-scripts directory. (It is the script that make install writes; make install itself does not work here, because it also builds Fokko.) Don't move or delete the atlasofliegroups directory afterwards, since the script points to it.

We recommend creating a directory atlasofliegroups/my_files and always starting atlas from there:

cd atlasofliegroups
mkdir my_files
cd my_files
atlas

File Input and Output

Atlas looks for files in the working directory and the atlas-scripts directory (or whatever you specify with --path). Output files are always written to the working directory.

Updating the atlas software

In the atlasofliegroups directory:

git pull origin master

If only .at files changed you typically do not need to recompile. If .cpp or .w files changed, recompile with make -j8 atlas (step 3).