This repository contains the latest Community Editions of IBM XL C/C++ for Linux and IBM XL Fortran for Linux.

XL C/C++ Community Edition and XL Fortran Community Edition are unlimited license, no-charge, fully functional products and do not include official IBM support.
You can provide feedback at the XL on POWER Community Edition forum:
- http://ibm.biz/xl-power-compilers

For product information, including how to purchase the licensed versions, see:
- XL C/C++ for Linux product page at http://ibm.biz/xlcpp-linux
- XL Fortran for Linux product page at http://ibm.biz/xlfortran-linux

Notes:
-This repository is for the ppc64le (Power little endian) architecture only (running 'uname -i' should return 'ppc64le').
-The 60-day fully functional evaluation versions are no longer available because the Community Editions are unlimited license, no-charge, and fully functional.
-This repository continues to have 'eval' in the URL to avoid breaking systems that already use this URL.
-If you are upgrading from a beta compiler, see the beta notes at the end of this page.



To add this repository on Ubuntu Server (http://www.ubuntu.com/download/server/power8), issue the following commands:

wget -q http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/public.gpg -O- | sudo apt-key add -
echo "deb http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/ubuntu/ trusty main" | sudo tee /etc/apt/sources.list.d/ibm-xl-compiler-eval.list
sudo apt-get update

To install IBM XL C/C++ for Linux, V16.1.0 Community Edition, issue the following commands:

sudo apt-get install xlc.16.1.0
sudo /opt/ibm/xlC/16.1.0/bin/xlc_configure

To install IBM XL Fortran for Linux, V16.1.0 Community Edition, issue the following commands:

sudo apt-get install xlf.16.1.0
sudo /opt/ibm/xlf/16.1.0/bin/xlf_configure



To add this repository on RHEL (https://access.redhat.com/products/red-hat-enterprise-linux/) or CentOS (https://www.centos.org/), issue the following commands:

wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/repodata/repomd.xml.key
sudo rpm --import repomd.xml.key
wget http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/rhel7/ibm-xl-compiler-eval.repo
sudo cp ibm-xl-compiler-eval.repo /etc/yum.repos.d/

To install IBM XL C/C++ for Linux, V16.1.0 Community Edition, issue the following commands:

sudo yum install xlc.16.1.0
sudo /opt/ibm/xlC/16.1.0/bin/xlc_configure

To install IBM XL Fortran for Linux, V16.1.0 Community Edition, issue the following commands:

sudo yum install xlf.16.1.0
sudo /opt/ibm/xlf/16.1.0/bin/xlf_configure



To add this repository on SLES (https://www.suse.com/products/power/), issue the following commands:

sudo zypper addrepo -c http://public.dhe.ibm.com/software/server/POWER/Linux/xl-compiler/eval/ppc64le/sles12/ ibm-xl-compiler-eval
sudo zypper refresh

To install IBM XL C/C++ for Linux, V16.1.0 Community Edition, issue the following commands:

sudo zypper install xlc.16.1.0
sudo /opt/ibm/xlC/16.1.0/bin/xlc_configure

To install IBM XL Fortran for Linux, V16.1.0 Community Edition, issue the following commands:

sudo zypper install xlf.16.1.0
sudo /opt/ibm/xlf/16.1.0/bin/xlf_configure



If you are not running Ubuntu, RHEL, CentOS, or SLES, you can run the following script to determine which repository you should use:
dpkg=$(which dpkg 2>/dev/null)
rpm=$(which rpm 2>/dev/null)
ID_LIKE=''
if   grep -iE '^ID(_LIKE)?=' /etc/os-release 2>/dev/null | grep -iE 'ubuntu|debian' >/dev/null 2>&1; then
  ID_LIKE='ubuntu'
elif grep -iE '^ID(_LIKE)?=' /etc/os-release 2>/dev/null | grep -iE 'sles|suse' >/dev/null 2>&1; then
  ID_LIKE='sles'
elif grep -iE '^ID(_LIKE)?=' /etc/os-release 2>/dev/null | grep -iE 'rhel|fedora|centos' >/dev/null 2>&1; then
  ID_LIKE='rhel'
elif [ "$dpkg" != '' ]; then
  ID_LIKE='ubuntu'
elif [ "$rpm" != '' ]; then
  ID_LIKE='rhel'
fi
echo "Use repository instructions for '$ID_LIKE'"



Note: If you are upgrading from a beta compiler, the apt-get/yum/zypper install command must list all
of the following packages so that the beta is successfully migrated to the Community Edition:

For IBM XL C/C++ for Linux, V16.1.0, the packages are as follows:
xlc.16.1.0 xlc-license-community.16.1.0 libxlc libxlc-devel.16.1.0 libxlsmp libxlsmp-devel.4.1.6 libxlmass-devel.8.1.6

For IBM XL Fortran for Linux, V16.1.0, the packages are as follows:
xlf.16.1.0 xlf-license-community.16.1.0 libxlf libxlf-devel.16.1.0 libxlsmp libxlsmp-devel.4.1.6 libxlmass-devel.8.1.6