yiseungmi87 commented on code in PR #2388:
URL: https://github.com/apache/systemds/pull/2388#discussion_r2731365492


##########
docs/site/source_install.md:
##########
@@ -0,0 +1,194 @@
+# Install SystemDS from Source
+
+This guide helps in the install and setup of SystemDS from source code.
+
+---
+
+- [1. Install on Windows](#1-install-on-windows)
+- [2. Install on Ubuntu](#2-install-on-ubuntu-2204)
+- [3. Install on macOS](#3-install-on-macos)
+- [4. Build the Project](#4-build-the-project)
+- [5. Run a Component Test](#5-run-a-component-test)
+- [6. Next Steps](#6-next-steps)
+
+Once the individual versions is set up skip to the common part of building the 
system.
+
+---
+
+# 1. Install on Windows
+
+First setup Java and maven to compile the system note the Java version is 17, 
we suggest using Java OpenJDK 17.
+
+- <https://openjdk.org/>
+- <https://maven.apache.org/download.cgi?.>
+
+Setup your environment variables with JAVA_HOME and MAVEN_HOME. Using these 
variables add the JAVA_HOME/bin and MAVEN_HOME/bin to the path environment 
variable. An example of setting it for Java can be found here: 
<https://www.thewindowsclub.com/set-java_home-in-windows-10>
+
+To run the system we also have to setup some Hadoop and spark specific 
libraries. These can be found in the SystemDS repository. To add this, simply 
take out the files, or add 'src/test/config/hadoop_bin_windows/bin' to PATH. 
Just like for JAVA_HOME set a HADOOP_HOME to the environment variable without 
the bin part, and add the `%HADOOP_HOME%\bin` to path.
+
+On Windows, cloning large repositories via GitHub Desktop may stall in some 
environments. If this happens, cloning via the Git command line is a reliable 
alternative.
+Example:
+```bash
+git clone https://github.com/apache/systemds.git 
+```
+
+To make the build go faster set the IDE or environment variables for Java: 
'-Xmx16g -Xms16g -Xmn1600m'. Here set the memory to something close to max 
memory of the device you are using.
+
+To start editing the files remember to import the code style formatting into 
the IDE, to keep the changes of the files consistent.
+
+A suggested starting point would be to run some of the component tests from 
your IDE.
+
+# 2. Install on Ubuntu (22.04 / 24.04)
+
+### 2.1 Install Java 17 and Maven
+
+First setup Java, maven and git to compile the system note that the Java 
version is 17.
+
+```bash
+sudo apt update
+sudo apt install openjdk-17-jdk maven
+sudo apt install -y git
+```
+
+Verify the install with:
+```bash
+java -version
+mvn -version
+git --version
+```
+
+This should return something like:
+```bash
+openjdk 17.x.x
+Apache Maven 3.x.x
+git version 2.x.x
+```
+
+### 2.2 Set JAVA_HOME for Javadocs
+
+Set `JAVA_HOME` (required for generating Javadocs during the Maven build):
+```bash
+export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which javac))))
+export PATH="$JAVA_HOME/bin:$PATH"
+```
+
+### 2.3 Clone Sorce Code
+
+Clone the source code:
+```bash
+cd /opt
+git clone https://github.com/apache/systemds.git
+cd systemds
+```
+
+### 2.4 Testing
+
+R should be installed to run the test suite, since many tests are constructed 
to compare output with common R packages. One option to install this is to 
follow the guide on the following link: 
<https://linuxize.com/post/how-to-install-r-on-ubuntu-20-04/>
+
+**Ubuntu 22.04** R can be installed using the CRAN repository.
+
+```bash
+sudo apt install dirmngr gnupg apt-transport-https ca-certificates 
software-properties-common
+sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 
E298A3A825C0D65DFD57CBB651716619E084DAB9
+sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu 
focal-cran40/'
+sudo apt update
+sudo apt install r-base
+```
+
+**Ubuntu 24.04** Installing R via older CRAN repositories can lead to 
dependency conflicts. In this case, installing R from the Ubuntu default 
repositories could be the solution.
+
+```bash
+sudo apt update
+sudo apt install -y r-base
+```

Review Comment:
   I have updated the section to use CRAN based installation!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to