Download Compiler, Standard Library and Demos

Binary releases of the compiler and the standard library are provided in the following sections.

We provide two types of distributable packages, stable releases and bleeding-edge releases (which we call weeklies). In both types, we provide a basic and a full package. In order to function, the basic package needs a system C compiler (GCC or MacOS Clang) and standard library, and pthreads. The full package additionally needs HWLOC and CUDA.

For normal usage, the basic variant is sufficient to try out all of the features of the Single Assignment C language.

Which package should I use?

At the moment, we suggest using one of the weekly packages as these include some of the latest features. These packages only differ from our stable release packages in that we do less testing before releasing them.

The packages listed here are built from the latest changes to our development branch. Some of the features provided are still in development and may not work as expected. Please message use on the user mailing list if you encounter any problem.

Ubuntu 16

Ubuntu 18

RHEL 6

RHEL 7

MacOS

FilenameFilesizeLast modified
1.3.3-360-1/basic/sac-checksums.sha256.txt209.0 B2019/09/09 12:49
1.3.3-360-1/basic/sac-stdlib-1.3-67-g11fce.pkg24.7 MiB2019/09/09 12:48
1.3.3-360-1/basic/sac2c-1.3.3-MijasCosta-360-g439c80-omnibus.pkg6.7 MiB2019/09/06 17:22

Linux x64

The contents of this package can be installed anywhere on your system (this is particularly useful if you do not have root permission!). Upon open the archive, you will find a README file and an install script (install.sh). Please read the README on how to use the install script.

Extra

We also have some user-contributed packages — as these are packages outwith the project, we can not provide any support on these. Please communicate with the package maintainers directly.

OS External Link
ArchLinux via sac-compiler-weekly and sac-stdlib-weekly

Legacy

Here we list some of the older releases for platforms we no longer package for.

Ubuntu 14
FilenameFilesizeLast modified
1.3.3-352/sac-checksums.sha256.txt226.0 B2019/04/28 09:12
1.3.3-352/sac-stdlib-1.3-66-g58e8.deb73.9 MiB2019/04/28 09:12
1.3.3-352/sac2c-1.3.3-MijasCosta-352-g727db-omnibus.deb39.7 MiB2019/04/28 05:41

The following packages contain the latest major-number release of sac2c.

Old releases

The packages provided here are old and not fully supported. Please use one of the weekly packages instead.

Ubuntu 14

[n/a: No match]

Ubuntu 16

[n/a: No match]

Ubuntu 18

[n/a: No match]

RHEL 6

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-669-gcd2f5-omnibus.rpm15.1 MiB2018/04/29 07:30
sac2c-1.2-beta-BlackForest-662-g8c92-omnibus.rpm15.0 MiB2018/03/04 06:51
sac2c-develop-2018-01-29-weekly.rpm15.1 MiB2018/01/29 20:08
sac2c-1.2-beta-BlackForest-467-gce8d4-omnibus.rpm12.6 MiB2017/04/25 15:17

RHEL 7

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-467-gce8d4-omnibus.rpm13.1 MiB2017/04/25 15:18

Debian 7

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-omnibus.deb33.7 MiB2017/04/25 15:18

Debian 8

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-omnibus.deb32.7 MiB2017/04/25 15:18

Linux x64

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-467-gce8d4-omnibus.tar.gz32.7 MiB2017/04/25 15:16

MacOS X (10.12)

FilenameFilesizeLast modified
sac2c-1.2-beta-BlackForest-467-gce8d4-omnibus.pkg5.8 MiB2017/04/25 15:15

RPM (RedHat Based distributions)

The rpm release of the compiler is designed to be installed on RedHat based distributions of Linux (e.g. RedHat, CentOS, Fedora, etc.) using the rpm tool set.

Installation:

$ sudo rpm --install sac2c-VERSION-RELEASE.rpm

DEB (Debian based distributions)

The deb package is meant to be installed on Debian based distributions (e.g. Debian, Ubuntu, etc.) using the dpkg tool set.

Installation:

$ sudo dpkg --install sac-VERSION-RELEASE.deb

Pkg (Apple MacOS)

The pkg is an installer that will place the SaC files in the correct location on your system. Symbolic links to the SaC binaries are created in /usr/local/bin for your convenience.

The SaC binaries are postfixed by their release type (production or debug), so there is a sac2c_p and sac2c_d respectively, sac2c is simply a link to sac2c_p.

Installation:

  1. Double click the downloaded pkg file
  2. A dialog box should appear that will guide you through the install process
  3. Confirm that you agree with our license, and click Install to install SaC
  4. The binary sac2c_p should be in your PATH

TAR.GZ (Unix-like operating systems)

The .tar.gz archive is intended for arbitrary installs, meaning that if you can't install sac2c using one of the other packages due to system permissions, you can use this archive to install it under you home-directory. The libraries of the compiler can be placed anywhere so long as the sac2c binary (and related) know where to find them. For this reason the archive provides the sac2c binary (and related) as source code to be compiled by the end-user.

For simplicities sake, an install script is provided. It supports several flags, but the most important one is -i to indicate where you want to install everything (for example ~/.local).

Installation of the compiler is as simple as extracting from the archive:

$ mkdir ~/temp_extract && cd ~/temp_extract
$ tar -xzf sac2c-VERSION-RELEASE.tar.gz
$ nano README                            # if you want more information on the install
$ bash ./install.sh -i INSTALL_DIR       # and thats it
$ cd ~ && rm -rf temp_extract

Interested in contributing to the project? You can do so in several ways, by either telling us about bugs or by contributing code to the project.

Reporting bugs

Head over to the community page and follow the guidelines there on how to submit a bug.

Contributing code

  • Create an account on this site by registering,
  • and send an email to info@sac-home.org indicating that you'd like to have access to the compiler sources.

The standard library comes as a collection of public repositories on github/SacBase.

As a minimum you should consider getting the core stdlib, either in binary form (SacBase/Stdlib/releases) or as source code from SacBase/Stdlib.

In the case of the source code, you'll have to check out the latest versions of the the stdlib repository and possibly further repositories from SacBase, you need to build and install the standard library.

Normally, the install of the stdlib should work fine in which case may want to proceed to the demos.

If you are curious about the details on where the built modules are actually stored or on how platform dependent versions are created and kept apart you can read up about cross compilation and the SBI (SaC Binary Interface).

The demos as well as the source codes for our tutorial can be found on github/SacBase.

You can download them freely to any location you like. Those directories make use of our generic Makefiles for compiling SaC programs.