MacPortsのErlang/OTPでRiakをまともにうごかす

ぼく自信はもうソースから手でインストールする暮らしになっているので不要なのだが、最近closeされたらしいのでここに努力の結晶を書き残しておこう。ErlangがHiPE有効な状態でインストールされていると、RiakをHiPE有効な状態でコンパイルしてしまい、中のなんとかいうモジュールがスタックオーバーフローしてRiakがまともに動かなかった時期があった。まあHiPEなしのコンパイル

$ ./configure --disable-hipe

としておけばよいのだが、MacPortsだとこれを入れるためにはvariantを指定しないといけなかった:

$ sudo port install erlang +nohipe

これはMacPortsが + で始まるvariantしか受け付けなかった時代の名残りで、しかもあろうことかバグっていた(のを僕が報告した)。

これが気付いたらいつの間にか本体に入っていたらしいので、MacPorts使いの人は

$ sudo port install erlang -- -hipe

ってやって入れるとR16B02が入る?と思うよ。それにしても -- ってすごいな
Riakの1.4はR16B系だとコンパイルできないので2.0系(preリリースしかないけど)で試してみてください。