[rabbitmq-discuss] Rabbit Erlang Client on Windows

Matthew Sackman matthew at lshift.net
Wed Dec 9 12:08:06 GMT 2009

Hi Colin,

Sorry for the delayed response, we've been somewhat snowed under here.
Or more accurately, meteorologically, drowned.

On Wed, Dec 02, 2009 at 06:44:08PM -0500, Colin Z wrote:
> Hey guys, I'm trying to upgrade all my Erlang and Rabbit components and am
> completely baffled at the complexity of changes since the last time I
> upgraded. Previously, everything seemed to "just work."
> Trying to target:
>  Erlang 13B03
>  RabbitMQ server 1.7.0
>  Latest version of RabbitMQ Erlang client
> I cannot get RabbitMQ to build from source, so I defaulted to using the
> pre-built version:
> http://www.rabbitmq.com/releases/rabbitmq-server/v1.7.0/rabbitmq-server-windows-1.7.0.zip

Right, that's your problem. The Erlang client shares code with the
server. Now in the past we did have a big push to make sure you could
compile the client without needing the source of the server, and it did
work correctly like that for a while. I have a horrible feeling though
that this is broken, maybe this happened when plugins came in. There is
no fundmental reason, as far as I know, why the client requires the
server sources.

> The client does not seem to come in a pre-built version, and I cannot get it
> to build from source either. It seems to want to build RabbitMQ itself and
> the pre-built version of MQ doesn't come with a Makefile, unfortunately.

Yup indeed.

> If I instead grab Rabbit from Mercurial:
> I get this:
> Admin at myhost /cygdrive/f/Program
> Files/erl5.7.4/lib/rabbitmq-erlang-client-default
> $ make
> f:/Program Files/GnuWin32/bin/make -C ../rabbitmq-server
> make[1]: Entering directory `f:/Program Files/erl5.7.4/lib/rabbitmq-server'
> python codegen.py body   ../rabbitmq-codegen//amqp-0.8.json
> src/rabbit_framing.erl
>   File "codegen.py", line 60
>     else: raise 'Non-empty table defaults not supported', d

Hmm. I'm not a python expert so I don't know. I'm using Python 2.5 here
and that works fine. I wonder whether this is python 3000 issue.

> SyntaxError: invalid syntax
> make[1]: *** [src/rabbit_framing.erl] Error 1
> make[1]: Leaving directory `f:/Program Files/erl5.7.4/lib/rabbitmq-server'
> make: *** [dist/rabbit_common.ez] Error 2
> Any ideas?

I'm afraid, I'd suggest trying a python before 3000. If that does work
for you then please let us know. I guess we're going to have to rewrite
all our python scripts for python 3000. Joy.


More information about the rabbitmq-discuss mailing list