Installation
That feeling you get when that right tool did all the work
The Amber CLI offers you a set of command line tools to create, generate, scaffold and run your projects quickly and simply.
Linux
Ensure you have the necessary dependencies:
Git: Use your platform specific package manager to install
git
Crystal: Follow the instructions to get
crystal
on this page: Crystal InstallationNodeJS and Webpack:
node
is an optional dependency and is used to compile JavaScript and other assets.PostgreSQL:
postgres
is a relational database server. Amber configures applications to use this database adapter by default, but you can switch to MySQL by passing the flag--database mysql
when creating a new application.
Once you have these dependencies, You can build the amber
tool from source:
From Source
Download and install amber
NOTE: At the time of this writing, v1.4.1 is the current stable release, but you should use the most recent tag in place of that.
If you run into an issue on compilation regarding Unhandled exception in spawn: fork: Cannot allocate memory
it means you don't have enough memory. This can easily be solved by adding a swapfile.
For Debian & Ubuntu
Currently, the only method to install on Debian based distros is to compile from source.
These are necessary to compile the CLI:
sudo apt-get install build-essential libreadline-dev libsqlite3-dev libpq-dev libmysqlclient-dev libssl-dev libyaml-dev
For RedHat & CentOS
sudo yum groupinstall development tools
sudo yum install readline-devel sqlite-devel openssl-devel libyaml-devel gc-devel libevent-devel
For ArchLinux & derivates
Install the CLI from AUR package. Dependencies are automatically installed.
yaourt -S amber
You should now be able to run amber
in the command line.
macOS
Installing Amber with these package managers also installs Crystal.
Homebrew
MacPorts
From source
Known problems while trying to build Amber from source on macOS:
If you see linker problems, such as
ld: library not found for -lssl (this usually means you need to install the development package for libssl)
, you may need to set some (or all) of those environment variables:
Last updated