# Install Julia From Source

## Custom built Julia from GitHub

### Goal

To get Julia installed as a normal user on RHEL 6.

### Motivation

Julia talks like Python but walks like C.”

To do statistics more efficiently.

The compiled binaries often contain install scripts which put files to shared folders under /usr. Consequently, they have to be run as sudo privileges. That drove me to start this lengthy Julia compilation.

### Installation

Without sudo privileges, I’ve chosen to compile Julia from source. I was too lazy to get the dependencies fixed. I just compiled it without GFortran and pkg-config under the ~/src folder.

After reassuring that the entire installation process didn’t require sudo privileges, I checkout out to v1.0.0 and make -j 6, hoping that six threads would be run simultaneously. However, MadScientist claimed that make isn’t multi-threaded. The CPU usage graph in the above screenshot captured the six CPUs running at the same time.

After half an hour, the system complained that the CMake installed was too old (v2.8.12.2). The process exited with a nonzero status and a message to run contrib/download_cmake.sh in order to grab an update version. After viewing the script for /usr, I ran make PREFIX=~/julia install and waited for an hour.

Despite some errors from the compiler and the make exit status 1, no errors were explicitly shown at the end of the process.

The compilation can take a long time. It lasted for one and a half hour on this workstation. I can’t how long this would take if it’s run on a laptop.

### Result

I added a symbolic link ~/bin/julia pointing to ~/src/julia/julia, which in turn points to ~/src/julia/usr/bin/julia.

\$ julia --version
julia version 1.0.0