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
Next revisionBoth sides next revision
download:sac2c [2018/11/09 18:19] – switched releases around hnvdownload:sac2c [2021/02/02 11:16] – hugely simplified the downloads page hnv
Line 1: Line 1:
-===== 1 Compiler: the sac2c ecosystem =====+===== Download Binaries =====
  
-<callout type="info" icon="true"> +<callout type="primary" icon="true"> 
-=== Package Compatibility === +=== Latest Release === 
-Releases have been tested on specific operating system versionsThough some packages can be installed on newer or older systems, we advise against doing thisIf you find a problem, please contact us (see at bottom of page of how to do this). +The latest release as of 01.02.2021 is [[https://gitlab.science.ru.nl/sac-group/sac-packages/-/releases/v1.3.3-572-1|v1.3.3-572-1]]
- +
-The packages below have been build against the following libraries **which need to be available on the system** in order to install the compiler: +
-  CUDA 8.+
-  HWLOC+
 </callout> </callout>
  
-==== Weeklies --- Bleeding-Edge Release ====+Binary releases of the compiler and the standard library are provided via our package repository, at https://gitlab.science.ru.nl/sac-group/sac-packages/-/releases. We support most //UNIX*// operating systems, including 
 +**RPM**, **DEB**, and **MacOS**. Running on Windows is possible using [[https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux|WSL]].
  
-<callout type="warning" icon="true"> +Other operating systems may have packages, see [[:download:sac2c#rd-party_packages|3rd-party packages]].
-=== Stability === +
-These packages are of the most recent (//bleeding-edge//) state of the compiler. They are provided on a //best-effort// basis, but it is highly likely that the packages (and compiler) might not work correctly and negatively impact your systemYou have been warned!  +
-</callout>+
  
-=== Ubuntu 14 === +Please message use on the [[:mailing_lists#user_mailing_lists|user mailing list]] if you encounter any problem.
-{{filelist>packages/weekly/Ubl14/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +
-=== Ubuntu 16 === +
-{{filelist>packages/weekly/Ubl16/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +
-=== RHEL 6 === +
-{{filelist>packages/weekly/RHEL6/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +
-=== RHEL 7 === +
-{{filelist>packages/weekly/RHEL7/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +
-=== Linux x64 === +
-{{filelist>packages/weekly/Linux/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}}+
  
-==== Major Release ====+=== Package Variants ===
  
-The following packages contain the latest //major-number// release of ''sac2c''.+We provide two types of packages variants, **basic** and  **full**.
  
-=== Ubuntu 14 === +<callout type="primary" icon="true"
-{{filelist>packages/release/Ubl14/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +=== Which variant should I use? === 
-=== Ubuntu 16 === +For normal usage, the **basic*variant is sufficient to try out all of the features of the Single Assignment C language. 
-{{filelist>packages/release/Ubl16/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +</callout> 
-=== RHEL 6 === + 
-{{filelist>packages/release/RHEL6/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +<HTML> 
-=== RHEL 7 === +<dl> 
-{{filelist>packages/release/RHEL7/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +  <dt><b>Basic package</b></dt> 
-=== Debian 7 === +    <dd>&mdash; package excludes special features, like the GPU backend or advanced multi-threading scheduling.</dd> 
-{{filelist>packages/release/Deb7/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +    <dd>&mdash; makes use of minimal external dependencies: <em>gcc, libc, uuid-lib</em>.</dd> 
-=== Debian 8 === +  <dt><b>Full package</b></dt> 
-{{filelist>packages/release/Deb8/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +    <dd>&mdash; package includes GPU backend and advanced multi-threading scheduling.</dd> 
-=== Linux x64 === +    <dd>&mdash; more external dependencies: <em>gcc, libc, uuid-lib, hwloc, cuda<em>*</em></em></dd> 
-{{filelist>packages/release/Linux/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}} +    <dd>* <i>CUDA must be installed as per the recommended guidelines of the distribution. Our packages are built using <a href="https://hub.docker.com/r/nvidia/cuda">docker containers</a> provided by NVIDIA, look there for their installation procedure.</i></dd> 
-=== MacOS X (10.12) === +</dl> 
-{{filelist>packages/release/mac10.12/sac*&style=table&tableheader=1&recursive=1&sort=name&direct=1&showdate=1&showsize=1}}+</HTML> 
 + 
 +=== 3rd-Party Packages  ===
  
-=== 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.
-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. +
  
 {{tablelayout?colwidth=","}} {{tablelayout?colwidth=","}}
 ^ OS ^ External Link ^ ^ OS ^ External Link ^
-| ArchLinux | via [[https://aur.archlinux.org/packages/sac2c|AUR]] |+| 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]] |
  
 ==== Installing ==== ==== Installing ====
 +
 +Please make sure that your system is properly setup to run SaC --- at the very least you need to have a working C-compiler.
 +
 +Note that on MacOS you must have Xcode installed and configured for command line usage. If you use [[https://www.brew.sh|brew]] or [[https://www.macports.org|macports]], this may already be done for you.
  
 <accordion> <accordion>
 <panel type="default" title="RPM (RedHat Based distributions)"> <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.+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 ''dnf'' or ''rpm'' tool set.
  
 Installation: Installation:
 +<code>
 +$ sudo dnf install sac2c-VERSION-RELEASE.rpm
 +</code>
 +or
 <code> <code>
 $ sudo rpm --install sac2c-VERSION-RELEASE.rpm $ sudo rpm --install sac2c-VERSION-RELEASE.rpm
Line 69: Line 63:
 <panel type="default" title="DEB (Debian based distributions)"> <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.+The ''deb'' package is meant to be installed on Debian based distributions (e.g. Debian, Ubuntu, etc.) using the ''dpkg'' or the ''apt'' tool set.
  
 Installation: Installation:
 <code> <code>
 $ sudo dpkg --install sac-VERSION-RELEASE.deb $ sudo dpkg --install sac-VERSION-RELEASE.deb
 +</code>
 +or
 +<code>
 +$ sudo apt install sac-VERSION-RELEASE.deb
 </code> </code>
 </panel> </panel>
Line 102: Line 100:
 $ cd ~ && rm -rf temp_extract $ cd ~ && rm -rf temp_extract
 </code> </code>
 +</panel>
 +<panel type="default" title="Windows 10">
 +While we do not currently support a native Windows version, you can still use it through a virtualisation layer
 +of your choosing. The easiest way to use ''sac2c'' on a Windows 10 system is to use Window's own virtualisation
 +for Linux support, the Windows Subsystem for Linux (WSL).
 +To do this, you have to do four things:
 +  - You need to activate the developer mode of Windows. (Settings -> Update & Security -> For developers -> tick the Developer Mode)
 +  - You need to activate the WSL. (Control Panel -> Programs -> Programs & Features -> Turn Features On & Off -> tick Windows Subsystem for Linux)
 +  - Go to the Microsoft Store and choose a Linux Distribution of your choice, e.g, Ubuntu 18.04 LTS.
 +  - Download the //basic// version of ''sac2c'' and ''sac-stdlib'' that matches the Linux version you have chosen and install it. For Ubuntu, you download the corresponding ''.deb'' files and then run
 +<code>
 +$sudo apt update
 +$sudo apt install sac2c-VERSION-RELEASE.deb
 +$sudo apt install sac-stdlib-VERSION-RELEASE.deb
 +</code>
 +
 +After that, you should have the sac system up and running:
 +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''.
 </panel> </panel>
 </accordion> </accordion>