Skip to content

Latest commit

 

History

History
132 lines (93 loc) · 3.35 KB

Build.md

File metadata and controls

132 lines (93 loc) · 3.35 KB

Building Lamdu from source

General notes

NodeJS

To drastically speed up Lamdu's installation under any OS, you can install an appropriate version of NodeJS beforehand, such that node is in your $PATH. The version has to be at least 6.2.1.

Enter node -v into terminal. If NodeJS is installed (and in your $PATH), this will print your current version. If it isn't, you'll get an error.

If you do not install NodeJS, Lamdu's installation will build it from source.

Platforms

macOS

Using haskell (stack), homebrew and git (prerequirements):

brew install rocksdb
git clone --recursive https://github.com/lamdu/lamdu
cd lamdu
stack setup
stack install
~/.local/bin/lamdu

ubuntu

Lamdu requires stack (version 1.6.1 or above):

To check your version of stack, use:

stack --version

and make sure that the version is at least 1.6.1. If stack is older than 1.6.1, you will need to upgrade stack. If you need to upgrade stack, use:

stack upgrade
hash -r

To install lamdu, run the following:

sudo apt-get update -qq
sudo apt-get install git nodejs zlib1g-dev libglew-dev librocksdb-dev -yq
sudo apt-get install libxxf86vm-dev libxrandr-dev libxi-dev libxcursor-dev libxinerama-dev -yq
git clone --recursive https://github.com/lamdu/lamdu
cd lamdu
stack setup
stack install
~/.local/bin/lamdu

NOTE: ~/.local/bin should be in your $PATH for the upgraded stack to take effect.

fedora

Optional: Install NodeJS with sudo dnf insall nodejs. Please see the starred note under "NodeJS & Build Time".

Lamdu requires stack (version 1.6.1 or above):

To check your version of stack, use:

stack --version

and make sure that the version is at least 1.6.1. If stack is older than 1.6.1, you will need to upgrade stack. If you need to upgrade stack, use:

stack upgrade
hash -r

To install lamdu, run the following:

sudo dnf install -y gcc gcc-c++ gmp-devel libXrandr-devel libXi-devel
sudo dnf install -y libXcursor-devel mesa-libGL-devel libGLU-devel
sudo dnf install -y libXinerama-devel rocksdb-devel glew-devel zlib-devel
git clone --recursive https://github.com/lamdu/lamdu
cd lamdu
stack setup
stack install
~/.local/bin/lamdu

NOTE: ~/.local/bin should be in your $PATH for the upgraded stack to take effect.

arch linux

sudo pacman -Sy rocksdb libxrandr libxi libxcursor libxinerama stack make tar gcc awk libxxf86vm mesa mesa-demos
git clone --recursive https://github.com/lamdu/lamdu
cd lamdu
LD_PRELOAD=/usr/lib/libtcmalloc.so stack build
stack exec -- lamdu

nix (any linux distribution)

requires Nix

git clone --recursive https://github.com/lamdu/lamdu
cd lamdu
nix-env -f default.nix -iA lamdu

Windows

Install:

Then run:

git clone https://github.com/lamdu/lamdu.git
cd lamdu
stack exec -- pacman -S mingw-w64-x86_64-rocksdb
stack build

If the installation of RocksDB fails due to signature verification, consider the work-around in msys2/MSYS2-packages#2343 (comment)