omake 0.9.8のコンパイル
omakeの0.9.8をコンパイルすると以下のようなエラーが出る.
*** omake: reading OMakefiles *** omake: finished reading OMakefiles (0.9 sec) - build src/main omake.opt + ocamlopt -warn-error A -w Aez -I . -I ../libmojave -I ../util -I ../magic -I ../ast -I ../ir -I ../env -I ../exec -I ../eval -I ../shell -I ../build -I ../builtin -o omake.opt unix.cmxa ../libmojave/lm.cmxa ../util/util.cmxa ../magic/magiopen Omake_state c.cmxa ../ast/ast.cmxa ../ir/ir.cmxa ../env/env.cmxa ../exec/exec.cmxa ../eval/eval.cmxa ../shell/shell.cmxa ../build/build.cmxa ../builtin/builtin.cmxa omake_shell.cmx omake_main.cmx ../clib/clib.a -cclib -lfam -cclib -lncurses -cclib -lreadline ../exec/exec.a(omake_exec.o): In function `camlOmake_exec__28': (.data+0x390): undefined reference to `caml_sync' collect2: ld returned 1 exit status File "caml_startup", line 1, characters 0-1:================= ] 01064 / 01069 Error: Error during linking *** omake: 1064/1069 targets are up to date *** omake: failed (13.5 sec, 0/221 scans, 1/482 rules, 1/1480 digests) *** omake: targets were not rebuilt because of errors: src/main/omake.opt make: *** [all] Error 2
これは,src/exec/omake_exec.mlの49行目にある以下の一行を削除すれば解決するらしい.
external sync : unit -> unit = "caml_sync"
OCamlのバージョンが新しすぎるせいで起きるらしいが,OCamlについては明るくないので詳細は不明・・・まぁ,これで大丈夫なので,問題なしかな.