Skip to content
This repository has been archived by the owner on Aug 30, 2021. It is now read-only.

Latest commit

 

History

History
121 lines (85 loc) · 2.87 KB

PKG_WINDOWS.md

File metadata and controls

121 lines (85 loc) · 2.87 KB

Build RabbitMQ Windows Package using Windows

Environment

Windows 8.1 using this Vagrantfile:

Vagrant.configure("2") do |config|
  config.vm.box = "inclusivedesign/windows81-eval-x64"
  config.vm.provider "virtualbox" do |v|
    v.gui = true
  end
end

Note that these steps should work on more recent versions of Windows as well. If you have issues using a newer version of Windows, please provide full details in a message to the rabbitmq-users mailing list.

Initial Steps

Bring up the VM and go through the process of updating Windows and (optionall) VirtualBox tools. You'll notice that the evaluation license is expired. Re-arm it by running this command via an administrative prompt:

slmgr -rearm

This part of the process will take a while as Windows is updated. Go make some coffee and check your email.

Install Erlang and Elixir

Using Chocolatey is the easiest method to install the most recent version of Erlang and Elixir. Install Chocolatey using these instructions (link), then install both Erlang and Elixir using this command from an administrative cmd.exe or Powershell terminal:

choco install elixir which

To confirm installation, open a new command prompt and run the following:

erl -version
elixir -v
which erl
which elixir

Install MSYS2 and NSIS

Chocolatey is also an easy way to install msys2 and the NSIS install script builder. Run the following from an administrative command prompt:

choco install msys2 nsis

As a bonus, it will update your msys2 installation for you during the initial install process.

Install MSYS2 packages

Start up an msys2 shell by running the following command (does not have to be admin):

C:\tools\msys64\msys2_shell.cmd

In that shell, install all of these dependencies. If you are prompted for input, just hit ENTER to choose the default:

pacman -S --needed git make tar rsync python zip unzip dos2unix man

Build RabbitMQ

Clone this repository

From within your MSYS2 shell:

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

Set PATH

export PATH="$PATH:/c/ProgramData/Chocolatey/bin:/c/ProgramData/Chocolatey/lib/Elixir/bin:/c/Program Files (x86)/NSIS/bin"

Fetch and build deps

Note: as of this writing, RabbitMQ 3.7.8 is the latest version. Be sure to check out the tag appropriate for your use:

cd rabbitmq-server-release

# the following checks out the "next to be released" branch
# this branch and version 3.7.9 have a necessary fix for building
# on windows, see this: https://github.com/rabbitmq/rabbitmq-server-release/pull/89

git checkout v3.7.x

make deps

Build Windows package

make UNIX_TO_DOS=unix2dos package-windows