Skip to content

Building Scala 3.x

aborkar-ibm edited this page Dec 12, 2022 · 27 revisions

Building Scala

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, 22.10) has 2.11.12-5
  • RHEL (8.4, 8.6, 8.7) has 2.10.6
  • SLES 15 SP3 has 2.10.7

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

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

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.6, 8.7, 9.0, 9.1)

    • 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, 22.10)

    • 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.2.1 was verified with OpenJDK 11 (build 11.0.17-LTS) , Eclipse Adoptium Temurin Runtime-11.0.17+8 (build 11.0.17.8) and IBM Semeru Runtime Open Edition 11.0.17+8 (build 11.0.17+8).

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.2.1/scala3-3.2.1.tar.gz
tar -xvf scala3-3.2.1.tar.gz
export PATH=$SOURCE_ROOT/scala3-3.2.1/bin:$PATH

Check Scala version by using the following command

scala -version
scalac -version
Scala compiler version 3.2.1 -- 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