Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
All required libraries
This is a list of known required libraries needed to run Crystal's specs.
You will need LLVM 3.8, 3.9, 4.0, 5.0, or 6.0.
You will also need BOEHM GC 7.6 or greater (because of this commit).
If your distro does not have a new enough package, one way is to install the latest bdw git master (you may need
diff packages prerequisites):
git clone https://github.com/ivmai/bdwgc.git cd bdwgc git clone https://github.com/ivmai/libatomic_ops.git autoreconf -vif ./configure --enable-static --disable-shared make -j make check sudo make install
To build crystal, a requisite is to have a working version of crystal itself already installed, see one of the non "from sources" option or use cross compilation to bootstrap a compiler for your current OS.
sudo apt-get install \ libbsd-dev \ libedit-dev \ libevent-core-2.0-5 \ libevent-dev \ libevent-extra-2.0-5 \ libevent-openssl-2.0-5 \ libevent-pthreads-2.0-5 \ libgmp-dev \ libgmpxx4ldbl \ libssl-dev \ libxml2-dev \ libyaml-dev \ libreadline-dev \ automake \ libtool \ git \ llvm \ llvm-dev \ libpcre3-dev \ build-essential -y
You will likely have to install bdw gc from source, above, most distro's don't have a new enough package of it. However, some distros might, test it via
apt install libgc-dev and if crystal
make works OK, it's new enough, regardless of release number.
sudo dnf -y install \ gmp-devel \ libbsd-devel \ libedit-devel \ libevent-devel \ libxml2-devel \ libyaml-devel \ llvm-static \ openssl-devel \ readline-devel \ redhat-rpm-config
Fedora 25 (current version as of writing) only packages Boehm GC 7.4. You can pull the 7.6 packages from Fedora Rawhide with:
sudo dnf install fedora-repos-rawhide sudo dnf install gc gc-devel # get all dependencies from Fedora 25 sudo dnf install gc gc-devel --enablerepo=rawhide --best --allowerasing # upgrade only gc and gc-devel to the version in Rawhide
This will not upgrade any other part of your system to Fedora Rawhide.
Mac OSX (with homebrew)
xcode-select --install brew install \ bdw-gc \ gmp \ libevent \ libxml2 \ libyaml \ llvm@5 brew link llvm --force
No boehm gc from source needed OS X.