RabbitMQ
Features
Get Started
Support
Community
Docs
Blog
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. If you are on a Debian-based system then you need the erlang-nox, erlang-dev and erlang-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: ~/.dialyzer_plt. Use
make PLT=/path/to/plt dialyze
to override this. Add broker to PLT beforehand, otherwise you will a lot of ‘unknown function’ warnings. See add_broker_to_plt make target.
source-dist Creates a source tarball of the library under ./PACKAGES.
package Creates an Erlang archive (binary build) of the library under ./PACKAGES.
Getting Help and Providing Feedback
If you have questions about the contents of this guide or any other topic related to RabbitMQ, don’t hesitate to ask them on the RabbitMQ mailing list.
Help Us Improve the Docs ❤️
If you’d like to contribute an improvement to the site, its source is available on GitHub. Simply fork the repository and submit a pull request. Thank you!
In This Section
Server Documentation
Client Documentation
Plugins
News
Protocol
Our Extensions
Building
Building the Server
Building the Java Client
Building the .NET Client
Building the Erlang Client
Our use of Git and GitHub
Previous Releases
License
RabbitMQ
Features
Get Started
Support
Community
Docs
Blog
Copyright © 2007-2020 VMware, Inc. or its affiliates. All rights reserved. Terms of Use, Privacy and Trademark Guidelines