Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
download:sac2c [2019/09/08 10:32] – re orgonised the downloads section hnvdownload:sac2c [2022/02/03 11:58] (current) – removed sbs
Line 1: Line 1:
-===== 1 Compiler: the sac2c ecosystem ===== 
  
-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.// 
- 
-<callout type="primary" icon="true"> 
-=== 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. 
-</callout> 
- 
-==== Weeklies --- Bleeding-Edge Release ==== 
- 
-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 [[:mailing_lists#user_mailing_lists|user mailing list]] if you encounter any problem. 
- 
-=== Ubuntu 16 === 
-{{filelist>packages/weekly/Ubl16/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Ubuntu 18 === 
-{{filelist>packages/weekly/Ubl18/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== RHEL 6 === 
-{{filelist>packages/weekly/RHEL6/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== RHEL 7 === 
-{{filelist>packages/weekly/RHEL7/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== MacOS === 
-{{filelist>packages/weekly/MacOS/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== 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. 
-{{filelist>packages/weekly/Linux/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
- 
-=== 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. 
- 
-{{tablelayout?colwidth=","}} 
-^ OS ^ External Link ^ 
-| ArchLinux | via [[https://aur.archlinux.org/packages/sac-compiler-weekly|sac-compiler-weekly]] and [[https://aur.archlinux.org/packages/sac-stdlib-weekly|sac-stdlib-weekly]] | 
- 
-=== Legacy === 
- 
-Here we list some of the older releases for platforms we no longer package for. 
- 
-== Ubuntu 14 == 
-{{filelist>packages/weekly/Ubl14/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
- 
-==== Major Release ==== 
- 
-The following packages contain the latest //major-number// release of ''sac2c''. 
- 
-<callout type="warning" icon="true"> 
-=== Old releases === 
-The packages provided here are **old** and not fully supported. Please use one of the [[download:main#weeklies_---_bleeding-edge_release|weekly packages]] instead. 
-</callout> 
- 
-=== Ubuntu 14 === 
-{{filelist>packages/release/Ubl14/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Ubuntu 16 === 
-{{filelist>packages/release/Ubl16/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Ubuntu 18 === 
-{{filelist>packages/release/Ubl18/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== RHEL 6 === 
-{{filelist>packages/release/RHEL6/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== RHEL 7 === 
-{{filelist>packages/release/RHEL7/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Debian 7 === 
-{{filelist>packages/release/Deb7/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Debian 8 === 
-{{filelist>packages/release/Deb8/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== Linux x64 === 
-{{filelist>packages/release/Linux/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
-=== MacOS X (10.12) === 
-{{filelist>packages/release/mac10.12/sac*&style=table&tableheader=1&recursive=1&sort=mtime&direct=1&showdate=1&showsize=1}} 
- 
-==== Installing ==== 
- 
-<accordion> 
-<panel type="default" title="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: 
-<code> 
-$ sudo rpm --install sac2c-VERSION-RELEASE.rpm 
-</code> 
-</panel> 
-<panel type="default" title="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: 
-<code> 
-$ sudo dpkg --install sac-VERSION-RELEASE.deb 
-</code> 
-</panel> 
-<panel type="default" title="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: 
-  - Double click the downloaded ''pkg'' file 
-  - A dialog box should appear that will guide you through the install process 
-  - Confirm that you agree with our license, and click //Install// to install SaC 
-  - The binary ''sac2c_p'' should be in your ''PATH'' 
-</panel> 
-<panel type="default" title="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''). 
- 
-<alert type="warning" icon="fa fa-warning">**Be Aware** Please remember to install all dependencies of the compiler before attempting to use it</alert> 
- 
-Installation of the compiler is as simple as extracting from the archive: 
-<code> 
-$ 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 
-</code> 
-</panel> 
-</accordion> 
- 
-==== Contribute? ==== 
- 
-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 [[:bugzilla|community]] page and follow the guidelines there on how to submit a bug. 
- 
-=== Contributing code === 
- 
-  * Create an account on this site by [[:index?do=register|registering]], 
-  * and send an email to [[info@sac-home.org]] indicating that you'd like to have access to the compiler sources.