RabbitMQ Erlang Client Library Build Instructions
Overview
This guide covers building RabbitMQ Erlang client from source.
Building from Source
Prerequisites
In order to build the client library, you will need a few tools.
RabbitMQ requires a recent version of Python for generating AMQP 0-9-1 framing code.
Additionally, you will need
- The Erlang
development and runtime tools. On a Debian-based
system then you need the
erlang-nox
,erlang-dev
anderlang-src
packages installed. See Erlang Version Requirements guide to learn about the recommended ways of provisioning a recent supported version of Erlang. - A recent version of Elixir
- a recent version of GNU make
- a recent version of
xsltproc
, which is part of libxslt - a recent version of
xmlto
- zip and unzip
Building the Client
The repository is hosted on GitHub. Clone the repository with
git clone https://github.com/rabbitmq/rabbitmq-erlang-client.git
to build the client, run make
:
cd rabbitmq-erlang-client
make
This will clone and build all dependencies of the client.
Other Make Targets
There are other useful Makefile
targets available in the repository. They include
Target | Description |
all | The default target. Builds the client library and all of its dependencies. |
shell | Builds the client library and starts an Erlang shell (a REPL) with the libraries loaded. |
run-broker | Builds the client and starts a RabbitMQ server node with shell and the client included in runtime load path. |
clean | Removes temporary build products. |
distclean | Removes all build products. |
tests | Runs test suites |
dialyze | Analyses the client source code with dialyzer. Uses PLT
file from default location:
to override this. Add broker to PLT beforehand,
otherwise you will a lot of 'unknown function'
warnings. See |
source-dist | Creates a source tarball of the library under ./PACKAGES . |
package | Creates an Erlang archive (binary build) of the library under ./PACKAGES . |