# Setup building environment To build the code, you will need to have Intel compiler, Intel MKL, Intel MPI, and CMake. ## Step 1: Connect to the server As we did in the [Configure SSH connection section Step 3](ssh.html#step-3-ssh-login). ## Step 2: Install CMake We require a minimum version of 3.20 for CMake. ::::{tab-set} :::{tab-item} PSU ACI server As of Feb 2023, you can access CMake on PSU server using the following command: ```sh module load cmake ``` You can also append the above command to your ~/.bashrc file so that cmake will be automatically loaded when you log in next time. ::: :::{tab-item} HPC cluster in general Either contact the admin to find where you can find CMake version higher than 3.20, or you can follow the [install instruction](https://cmake.org/install/) for Linux and install cmake for you locally. ::: :::{tab-item} Your own Linux machine You should be able to find CMake in most of the distribution's official package manager. Such on Ubuntu, you can install CMake with `sudo apt install cmake`. ::: :::: ## Step 3: Setup Intel environment ::::{tab-set} :::{tab-item} PSU ACI server As of Feb 2023, you can access the Intel compilers, Intel MPI, and Intel MKL on the PSU server using the following command: ```sh module load intel impi mkl ``` You can also append the above command to your ~/.bashrc file so that these intel packages will be automatically loaded when you log in next time. ::: :::{tab-item} HPC cluster in general Contact the admin to learn how you can access the Intel compiler, Intel MKL, Intel MPI. ::: :::{tab-item} Your own Linux machine Install the Intel oneAPI's basekti and hpckit. [Choose your machine's package manager and follow its instructions](https://www.intel.com/content/www/us/en/develop/documentation/installation-guide-for-intel-oneapi-toolkits-linux/top/installation/install-using-package-managers.html). ::: :::: ## Step 4: Configure git You can clone a repository using [https link](https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls) or [ssh link](https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-ssh-urls). For beginners, I recommend using the ssh approach. You may follow the commands below for a simpler version, or follow steps [on this github doc page](https://docs.github.com/en/authentication/connecting-to-github-with-ssh) for detailed instructions. 1. Generate a new SSH key, substituting in your GitHub email address. ``` ssh-keygen -t ed25519 -C "your_email@example.com" ``` 2. Go to your user's **Settings** ```{image} _static/user-settings.jpg :alt: avatar :width: 300px :align: center ``` 3. Click **SSH and GPG keys** ```{image} _static/user-ssh.jpg :alt: avatar :align: center ``` 4. Click **New SSH Key** button ```{image} _static/new-ssh.jpg :alt: avatar :align: center ``` 5. Copy the SSH public key to your clipboard. If you use a different name for the generate key, then change the following command accordingly. Then select and copy the contents of the id_ed25519.pub file displayed in the terminal to your clipboard. ```sh cat ~/.ssh/id_ed25519.pub ``` 6. Paste the SSH public key to the **Key** text area and give it a title, such as *aci*, then click **Add SSH Key** ```{image} _static/paste-sshkey.jpg :alt: avatar :align: center ``` 7. Verify your new ssh key with the following command `ssh -T git@github.com`. If successful, now you will be able to clone the source code from Github.