跳到主要内容
版本:4.1

服务器构建说明

概述

本节介绍获取 RabbitMQ 服务器源代码副本的过程,以及从源代码构建服务器的说明。

从 Git 构建

首先,从 我们的 GitHub 仓库 获取源代码

git clone https://github.com/rabbitmq/rabbitmq-server.git rabbitmq

然后,使用 GNU Make 拉取依赖项并构建服务器以及 RabbitMQ 发行版附带的所有插件

cd rabbitmq
make

所需的库和工具

为了构建 RabbitMQ,必须安装一些工具。

Python

RabbitMQ 需要最新版本的 Pythonsimplejson.py (一个 JSON 阅读器和写入器的 Python 实现),用于生成 AMQP 0-9-1 框架代码。simplejson.py 自 2.6 版本以来作为标准 json 库包含在 Python 核心中。

Erlang/OTP 工具链和标头

需要 Erlang 开发和运行时工具来编译 RabbitMQ 服务器、工具和 tier 1 插件

在基于 Debian 的系统上,安装 erlang-noxerlang-deverlang-src 包。

请参阅 Erlang 兼容性指南,了解有关受支持的 Erlang/OTP 版本的更多信息。

Elixir

构建 RabbitMQ CLI 工具 需要最新版本的 Elixir

GNU Make

GNU make 是 RabbitMQ 使用的主要构建工具。

xsltproc 和 xmlto

必须提供最新版本的 xsltproc(它是 libxslt 的一部分)和 xmlto

zip 和 unzip

如果通过归档文件而不是 git 仓库克隆获取源代码,则需要 zipunzip

构建服务器

切换到 rabbitmq 目录,然后键入 make

其他有趣的 Makefile 目标包括

Make 目标描述
all

默认目标。构建服务器。

shell

构建客户端库并启动加载了库的 Erlang shell。

run-broker

构建服务器并使用交互式 Erlang shell 启动实例。默认情况下,这会将数据(包括节点的数据目录)放在 /tmp/rabbitmq-test-instances 下,但可以通过设置 Makefile 变量 TEST_TMPDIR 来覆盖此位置

make run-broker TEST_TMPDIR="/some/other/location/for/rabbitmq-test-instances"

Erlang 节点名称也可以通过设置 RABBITMQ_NODENAME 来更改

make run-broker RABBITMQ_NODENAME=rmq

请参阅 配置指南,了解其他可能有用的变量。

clean删除临时构建产品。
distclean删除所有构建产品,包括获取的依赖项。
tests

运行多个服务器测试套件。这非常消耗资源,将需要几个小时。各种测试套件将启动、修改和销毁许多节点和集群。

构建包

实际上,从源代码构建 RabbitMQ 服务器的用途有限,除非可以生成易于部署的包(例如,通用二进制构建或 Debian 包)。

与打包 RabbitMQ 服务器相关的所有内容都在 主 RabbitMQ 仓库 中。

有许多顶级打包 Make 目标可用,每个包类型(或包系列,例如 RPM)一个

  • make package-generic-unix
  • make package-deb
  • make package-rpm
  • make package-rpm-suse
  • make package-windows
© . All rights reserved.