以下rootで。
apt-get install ocaml apt-get install opam
途中、以下のように聞いてくるので。「y」で応答。
Do you want OPAM to modify ~/.bashrc and ~/.ocamlinit? (default is 'no', use 'f' to name a file other than ~/.bashrc) [N/y/f] y
そもそも、
apt-get install opam -y
ですかね。
その後、引き続いて。
opam init
次にopamからOCamlをインストール。
opam list
でOCamlのバージョンを確認。
opam switch 4.02.3
でインストールされる。
その後、必ず。
eval `opam config env`
これ、なんか面倒だと思うのは私だけでしょうか。
OCamlのフレームワークであるeliomを使いたいので、以下のようにインストールする。
付随するocsigenserverなど他のコンポーネントも一緒にインストールされるようです。
opam install eliom
と、ここでエラーが。
=-=- ocamlfind.1.5.6 troubleshooting =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= => Could not build ocamlfind. The most common reason for that is a missing 'm4' system package.
m4が入ってないって事!?
とりあえず、やってみる。
apt-get install m4
再度
opam install eliom
とするも、エラー。
#=== ERROR while installing conf-pkg-config.1.0 ===============================# Internal error: "pkg-config": command not found. #=== ERROR while installing dbm.1.0 ===========================================# # opam-version 1.2.0 # os linux # command ./configure # path /root/.opam/4.02.3/build/dbm.1.0 # compiler 4.02.3 # exit-code 2 # env-file /root/.opam/4.02.3/build/dbm.1.0/dbm-913-fbcac7.env # stdout-file /root/.opam/4.02.3/build/dbm.1.0/dbm-913-fbcac7.out # stderr-file /root/.opam/4.02.3/build/dbm.1.0/dbm-913-fbcac7.err ### stdout ### # Configuring for OCaml version 4.02.3 # # NDBM not found, the "camldbm" library cannot be built.
とりあえず、
apt-get install pkg-config
としてみる。
apt-get install libpcre3-dev -y sudo apt-get install camlp4-extra
再度
opam install eliom
でエラーが出なくなりました。
そもそもUbuntuを入れた後の作法が足りなかったのかな。
sudo aptitude update sudo aptitude safe-upgrade
この辺を行ってからの方が良いのかもです。
ここからは、以前に書いた通り。
eliom-distillery -name hello cd hello make test.byte
と、するがエラー。
vagrant@vagrant:~/develop/hello$ make test.byte js_of_eliom -ppx -c -package lwt.ppx -package js_of_ocaml.deriving.ppx -package js_of_ocaml.ppx hello.eliom Fatal error: exception Fl_package_base.No_such_package("lwt.ppx", "") Makefile:206: recipe for target '_client/hello.cmo' failed make: *** [_client/hello.cmo] Error 2
OCamlのバージョンが古いのかなと思って
opam switch 4.02.3
としてみるも、エラー。
vagrant@vagrant:~/develop/hello$ make Makefile:216: .depend: No such file or directory mkdir _deps eliomdep -server -ppx -package lwt.ppx -package js_of_ocaml.deriving.ppx hello.eliom > _deps/hello.eliom.server Fatal error: exception Fl_package_base.No_such_package("js_of_ocaml.deriving.ppx", "") Makefile:222: recipe for target '_deps/hello.eliom.server' failed make: *** [_deps/hello.eliom.server] Error 2
現在の私のレベルでは、このエラーの解読が不可能…。
なんか.ppxのパッケージがなんちゃらとの事のようだが、「.ppxのファイルが無いよ」なのか「.ppxじゃないよ」なのかも分からず。
「.depend」ってのがincludeできないと言われているようだが、ひょっとして「_deps」の事かなぁ…。つか「.depend」が無いってのに「_deps」をmkdirしてるというのが、これで合ってるのか間違ってるのか…。
で、これ。
make test.byteを実行する度にエラーの内容が変わるのです。
毎回、必要な?ディレクトリやファイルを作成するようで、でも一括で作成されるわけじゃないみたいで、都度作成してる感じ。
ただ、3回ほど繰り返した所で、
js_of_eliom -ppx -c -package lwt.ppx -package js_of_ocaml.deriving.ppx -package js_of_ocaml.ppx hello.eliom Fatal error: exception Fl_package_base.No_such_package("js_of_ocaml.deriving.ppx", "") Makefile:206: recipe for target '_client/hello.cmo' failed make: *** [_client/hello.cmo] Error 2
こんな感じで、_clientの下のhello.cmoが無いって感じに落ち着きます。
という事で、今回は一晩寝てもサッパリ分からないので、とりあえずこの辺で。
2 Responses to Ubuntu7へOCamlモロモロをインストール