2009-04-20 34 views
1

我是一個巨大的二郎山小白,並在編譯ejabberd,我得到這個錯誤:ejabberd編譯錯誤

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 

什麼會導致此?

回答

5

這是R13A中的一個內部編譯器錯誤 - 它已經在R13B快照中修復2009-04-15_18。 R13B-0將於2009年4月22日星期三被釋放,mod_muc將編譯罰款這一點。

但是,ejabberd並不完全支持R13B - ram_file_io服務器不支持IO服務器協議中的新unicode選項,所以在修復之前,您將無法使用R13B成功啓動ejabberd。現在最好的辦法是R12B-5。

2

這是內部二郎編譯器錯誤。請升級您的Erlang運行時。也許二郎R12B-5是最好的選擇。

快速搜索顯示this email從二郎山/ OTP團隊。它是指出錯誤R12B-0之前就已經存在,所以它可能是固定在新版本。

二郎R12B-5可以在這裏找到: