Skip to content

Building Scala 3.x

aborkar-ibm edited this page Aug 8, 2022 · 27 revisions

Building Scala

Note: This package uses Log4j. Please see details here, for the updates on security vulnerabilities.

Below versions of Scala are available in respective distributions at the time of creation of these build instructions:

  • Ubuntu (18.04, 20.04) has 2.11.12-4
  • Ubuntu 22.04 has 2.11.12-5
  • RHEL (8.4, 8.5, 8.6) has 2.10.6
  • SLES 15 SP3 has 2.10.7

The instructions provided below specify the steps to build Scala version 3.1.3 on Linux on IBM Z Systems for following distributions:

  • RHEL (7.8, 7.9, 8.4, 8.5, 8.6, 9.0)
  • SLES (12 SP5, 15 SP3, 15 SP4)
  • Ubuntu (18.04, 20.04, 22.04)

General Notes:

  • When following the steps below please use a standard permission user unless otherwise specified.
  • A directory /<source_root>/ will be referred to in these instructions. This is a temporary writable directory anywhere you'd like to place it.

Step 1: Build and Install Scala

1.1) Install the dependencies

export SOURCE_ROOT=/<source_root>/
  • RHEL (7.8, 7.9, 8.4, 8.5, 8.6, 9.0)

    • With OpenJDK

      sudo yum install -y java-11-openjdk java-11-openjdk-devel wget
    • With IBM Semeru Runtime (previously known as AdoptOpenJDK openj9)

      sudo yum install -y tar wget
      • Download and install IBM Semeru Runtime (Java 11) from here.
    • With Eclipse Adoptium Temurin Runtime (previously known as AdoptOpenJDK hotspot)

      sudo yum install -y tar wget
      • Download and install Eclipse Adoptium Temurin Runtime (Java 11) from here.
  • SLES (12 SP5, 15 SP3, 15 SP4)

    • With OpenJDK

      sudo zypper install -y java-11-openjdk java-11-openjdk-devel wget
    • With IBM Semeru Runtime (previously known as AdoptOpenJDK openj9)

      sudo zypper install -y tar wget gzip
      • Download and install IBM Semeru Runtime (Java 11) from here.
    • With Eclipse Adoptium Temurin Runtime (previously known as AdoptOpenJDK hotspot)

      sudo zypper install -y tar wget gzip
      • Download and install Eclipse Adoptium Temurin Runtime (Java 11) from here.
  • Ubuntu (18.04, 20.04, 22.04)

    • With OpenJDK

      sudo apt-get update
      sudo apt-get install -y wget openjdk-11-jdk openjdk-11-jdk-headless
    • With IBM Semeru Runtime (previously known as AdoptOpenJDK openj9)

      sudo apt-get update
      sudo apt-get install -y wget tar gzip
      • Download and install IBM Semeru Runtime (Java 11) from here.
    • With Eclipse Adoptium Temurin Runtime (previously known as AdoptOpenJDK hotspot)

      sudo apt-get update
      sudo apt-get install -y wget tar gzip
      • Download and install Eclipse Adoptium Temurin Runtime (Java 11) from here.

Note: At the time of creation of these build instructions, Scala 3.1.3 was verified with OpenJDK 11 (build 11.0.14-LTS) , Eclipse Adoptium Temurin Runtime-11.0.13+8 (build 11.0.14.1+1) and IBM Semeru Runtime Open Edition 11.0.13.0 (build 11.0.14.1+1).

1.2) Set Environment Variables

export JAVA_HOME=<Path to Java>
export PATH=$JAVA_HOME/bin:$PATH

1.3) Download and Install Scala

cd $SOURCE_ROOT
wget https://github.com/lampepfl/dotty/releases/download/3.1.3/scala3-3.1.3.tar.gz
tar -xvf scala3-3.1.3.tar.gz
export PATH=$SOURCE_ROOT/scala3-3.1.3/bin:$PATH

Check Scala version by using the following command

scala -version
scalac -version
Scala compiler version 3.1.3 -- Copyright 2002-2022, LAMP/EPFL.

Step 2: [Optional] Testing Scala Sample Program

2.1) Create a test program

Create a test file called Hello.scala using below command:

echo '@main def hello = println("Hello, world!")' > Hello.scala

2.2) Compile the test program

scalac Hello.scala

Note: This will create several files:

Hello$package$.class
Hello$package.class
Hello$package.tasty
Hello.scala
hello.class
hello.tasty

2.3) Execute the test program

scala hello

The output of the above test program should be:

Hello, world!

Note: For addition information on Getting Started with Scala, visit here

References

Clone this wiki locally