Erlangをソースから入れる
なんかちょいちょい電車の中から広告で見てた水樹奈々のTHE MUSEUM IIのジャケットがかわいかったから衝動買いして、それについてたPVを見ながらこの記事を書いています。
かわいいなぁ。
とかやってるうちに終わりましたけど。
まどか☆マギカ見よう。
最近、Erlangにハマっておりまして、ようやくなんか書ける気がしてきたので、隙あらば使ってみようなどと思っているところです。
この本が結構良かった。
Amazon.co.jp: プログラミングErlang: Joe Armstrong, 榊原一矢: 本
普通の教科書なんですけど、エッセイかと思うくらい言い回しが微妙に面白かったりとか、前から順に読んでいくと「今欲しいのはコレだろ?」と言わんばかりに欲しい情報が出てくる感じで。サンプルコードを全部打ち込んでいく感じでやっていくとちょうどいいスピードで進んでいくと思います。1週間あればなんか書いてみようとおもうくらいにはなるんじゃないかなぁと。
で、なんか書いてみたかったので、仕事の息抜きにAWS上のAmazonLinuxにErlang入れてなんかサービス作ってみようかなぁなどと思ったはいいものの、yumでErlangが見つからない。仕方ねぇいい機会だし、ソースから入れてみるか。と思った記録。
普通はこんなことやらなくてもyumだのaptだのportsだのでそれなりに新しいバージョンのが入るらしいです。私のMacでもMac portsで入りました。便利な時代ですね。
で、私が使った環境。
AmazonLinuxで、既にAWSSDK for Rubyを入れて遊んでたのでそれなりにパッケージは入っているものとする。先にそっちの記事書けばよかったな。
ビルド
まずはダウンロード。
http://www.erlang.org/download.html
ここから、Source FileとMan Pages Fileをダウンロードします。今のバージョンはR15Bでした。OTPってのはたぶん最終的にお世話になる標準アプリケーションフレームワークの名前です。
で、あとはお決まりの通り。
# tar xvzf otp_src_R15B.tar.gz # cd otp_src_R15B # ./configure
するとconfigでコケた。
configure: error: No curses library functions found configure: error: /bin/sh '/home/ec2-user/tmp/otp_src_R15B/erts/configure' failed for erts
libcursesが無いっぽいんじゃないかな? ということで仰せの通り、ncursesを入れる。
# yum -y install ncurses ncurses-devel # ./configure
今度はなんか嫌な感じの出た。
********************************************************************* ********************** APPLICATIONS DISABLED ********************** ********************************************************************* crypto : No usable OpenSSL found jinterface : No Java compiler found odbc : ODBC library - link check failed orber : No C++ compiler found ssh : No usable OpenSSL found ssl : No usable OpenSSL found ********************************************************************* ********************************************************************* ********************** APPLICATIONS INFORMATION ******************* ********************************************************************* wx : wxWidgets not found, wx will NOT be usable ********************************************************************* ********************************************************************* ********************** DOCUMENTATION INFORMATION ****************** ********************************************************************* documentation : fop is missing. Using fakefop to generate placeholder PDF files. *********************************************************************
よく見ると別にそんな嫌な感じじゃなかった。OpenSSLとC++コンパイラとODBCとjavacとwxとfopが無いっぽいというのがなんとなくわかるので、とりあえず片っ端から入れる。
wxは……、めんどくさいしパッケージ無いしGUI使わないから要らないので捨ておく。
# yum -y install openssl openssl-devel gcc-c++ unixODBC unixODBC-devel fop java-1.6.0-openjdk-devel
あとはお決まりの通り。
# make # make install
これで私は無事にインストールできました。すごく親切だ。おめでとうございます。