RabbitMQ installs into $ERL_LIBS aka /usr/lib/erlang/lib; apparently this can create build errors with other Erlang applications. I found this while trying to build Riak (from http://basho.com/) and it failed with the same error message about a duplicate module definition. We should probably try to change the RabbitMQ ebuild to install elsewhere, i.e. not into the system lib directory. I'll also consult with the RabbitMQ folks about alternatives and/or better fixes. Reproducible: Always Steps to Reproduce: 1. install RabbitMQ 2. try to build Riak (needs R14B) 3. fail Actual Results: See $URL for problem & discussion
Hi, Did you actually talked with the RabbitMQ upstream about this issue? I would like to get 2.7 in my system and it would be nice to fix this.
(In reply to comment #1) > Did you actually talked with the RabbitMQ upstream about this issue? Not yet, sorry - I'll try to get to it. I sort of lost interest in Riak for the time being and so this fell off the table. > I would like to get 2.7 in my system and it would be nice to fix this. As long as whatever else you are trying to use does not need a gen_server2 module (or whatever it was named) it should work just fine; the RabbitMQ ebuild by itself certainly works.
fixed in cvs, thanks
oops, wrong bug, sorry
Feedback from upstream at: http://thread.gmane.org/gmane.comp.networking.rabbitmq.general/15025
So this turned out to be easier than expected: simply change the targetdir definition in src_install to not pollute the Erlang lib dir and bingo! Everything still works (for me).
Created attachment 307783 [details, diff] Patch to fix installation directory This patch changes the RabbitMQ target directory to point outside the Erlang lib dir to avoid potential module conflicts. I used /usr/lib/rabbitmq-server-<version>/ but that is of course just a suggestion.
fixed in 2.8.1, thanks!