2009-04-20 8 views
1

Je suis un grand Erlang noob, et lors de la compilation ejabberd, je reçois cette erreur:ejabberd Erreur de compilation

make[1]: Entering directory `/usr/src/ejabberd-2.0.5/src/mod_muc' 
/usr/local/bin/erlc -W -I .. -pz .. -o .. mod_muc_room.erl 
Function: '-process_admin_items_set/4-fun-0-'/2 
./mod_muc_room.erl:none: internal error in v3_codegen; 
crash reason: {{case_clause, 
        {'EXIT', 
         {function_clause, 
          [{v3_codegen,longest, 
           [[{ker39},{ker38},{ker37},{ker36},{cor36}], 
           []]}, 
          {v3_codegen,longest,2}, 
          {v3_codegen,sr_merge,2}, 
          {v3_codegen,match_cg,5}, 
          {v3_codegen,guard_match_cg,6}, 
          {v3_codegen,guard_cg,5}, 
          {v3_codegen,'-guard_cg_list/6-anonymous-0-',4}, 
          {v3_codegen,flatmapfoldl,3}]}}}, 
       [{compile,'-select_passes/2-anonymous-2-',2}, 
       {compile,'-internal_comp/4-anonymous-1-',2}, 
       {compile,fold_comp,3}, 
       {compile,internal_comp,4}, 
       {compile,internal,3}]} 
make[1]: *** [../mod_muc_room.beam] Error 1 
make[1]: Leaving directory `/usr/src/ejabberd-2.0.5/src/mod_muc' 
make: *** [all-recursive] Error 1 

Quelle serait la cause?

Répondre

5

Ceci est un bug de compilateur interne dans R13A - il a été corrigé dans l'instantané R13B à partir de 2009-04-15_18. R13B-0 sera publié le mercredi 22 avril 2009, et mod_muc se compilera avec ça. Cependant, ejabberd n'est pas encore totalement compatible R13B - le serveur ram_file_io ne supporte pas la nouvelle option unicode dans le protocole du serveur IO, donc vous ne pourrez pas démarrer ejabberd avec R13B jusqu'à ce que cela soit corrigé. Votre meilleur pari pour le moment est R12B-5.

2

Ceci est interne Erlang bug du compilateur. Veuillez mettre à jour votre runtime Erlang. Probablement Erlang R12B-5 est le meilleur choix.

La recherche rapide montre this email de l'équipe Erlang/OTP. Il est indiqué que le bogue existait avant R12B-0, donc il est probablement corrigé dans les versions plus récentes.

Erlang R12B-5 est disponible ici:

  • Ubuntu - utiliser des paquets Jaunty
  • Debian - paquets d'utilisation de Sid
  • Windows - paquets d'utilisation de http://erlang.org/download.html
  • autres - comprendre votre
Questions connexes