[Omake] building omake

Sam Steingold sds at gnu.org
Tue Jun 30 15:43:04 PDT 2009


Aleksey,

Aleksey Nogin wrote:
> 
> Severl issues here:
> - OMake's own OMakefiles tend to use the latest OMake features, so if
> you only have an older omake compiled (like in your case), you'd
> normally need to use make-based bootstrapping.

"make bootstrap" failed too.

> - The 0.9.9.x branch is highly experimental, unstable and not always
> maintaned. If you want the latest stable code, check out the 0.9.8.x
> branch instead.

omake on this tree failed too.

> - If you do want the latest 0.9.9.x code,

I would prefer the tree against which you are most likely to accept patches ;-)

> 
> On 30.06.2009 09:19, Sam Steingold wrote:
> 
>> I tried to build omake from sources.
>> I already have omake 0.9.8.5 installed, so I tried to use it:
>>
>> 1. svn co http://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.9.x/
>> $ cd 0.9.9.x
>> $ omake
>> $ vi .config (edit PREFIX)
>> $ omake
>> *** omake: reading OMakefiles
>> --- Checking for svn... (found /usr/bin/svn)
>> --- Checking for gcc... (found /usr/bin/gcc)
>> --- Checking for g++... (found /usr/bin/g++)
>> --- Checking for ncurses... (found)
>> --- Checking for readline... (found, GNU)
>> --- Checking for FAM... (found)
>> --- Checking whether FAM supports Gamin's extensions... (yes)
>> --- Checking if ocamldep understands -modules... (yes)
>> Updating the .config file.
>> --- Checking for ocamlfind... (found /janelibs/ocaml-3.11.0+jane3_64/bin/ocamlfind)
>> --- Checking for ocamlc.opt... (found
>> /janelibs/ocaml-3.11.0+jane3_64/bin/ocamlc.opt)
>> --- Checking for ocamlopt.opt... (found
>> /janelibs/ocaml-3.11.0+jane3_64/bin/ocamlopt.opt)
>> --- Checking whether ocamlc understands the "z" warnings... (yes)
>> --- Checking for ncurses... (found)
>> --- Checking for readline... (found, GNU)
>> --- Checking for FAM... (found)
>> --- Checking whether FAM supports Gamin's extensions... (yes)
>> *** omake error:
>>     File mk/make_gen: line 62, characters 47-54
>>     unbound variable: global.name
>>
>> why am I seeing the "Checking" messages on each omake invocation?
>>
>> $ make bootstrap
>> mkdir -p boot
>> ln -sf ../src/Makefile boot/Makefile
>> ...
>> make[1]: *** No rule to make target
>> `../src/clib/../libmojave-external/cutil/inotify-test.c', needed by
>> `inotify-test.c'.  Stop.
>> make[1]: *** No rule to make target
>> `../src/clib/../libmojave-external/cutil/inotify-test.c', needed by
>> `inotify-test.c'.  Stop.
>> make: *** [bootstrap] Error 2
>>
>>
>>
>> 2. svn co http://svn.metaprl.org/svnroot/mojave/omake-branches/0.9.8.x
>> $ cd 0.9.8.x
>> $ omake
>> *** omake: reading OMakefiles
>> *** omake error:
>>     File lib/build/C.om: line 182, characters 18-28
>>     unbound variable: global.CXX_EXT
>>
>>
>> 3. wget http://omake.metaprl.org/downloads/omake-0.9.8.5-3.tar.gz
>> $ tar xfz omake-0.9.8.5-3.tar.gz
>> $ cd omake-0.9.8.5
>> $ omake
>> *** omake: reading OMakefiles
>> *** omake: finished reading OMakefiles (0.92 sec)
>> - build src/main omake.opt
>> + ocamlopt.opt -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/magic.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:==============     ] 01129 / 01198
>> Error: Error during linking
>> *** omake: 1129/1198 targets are up to date
>> *** omake: failed (6.25 sec, 20/229 scans, 1/497 rules, 0/1667 digests)
>> *** omake: targets were not rebuilt because of errors:
>>     src/main/omake.opt
>>
>> I have ocamlc version 3.11.0.
>>
>> so, how do I compile omake from sources?
>>
>> PS. INSTALL says "let's assume you do don't have omake already installed"
>> it should be "let's assume you do not have omake already installed"
>>
>> PPS. the instructions in INSTALL for when omake is already present is eminently
>> unclear. What does "you should use your working copy to do the bootstrap"
>> mean?! "cd src; omake" ? "omake bootstrap"?
>>
>> PPS. The reason I want to build omake is that we are unhappy with our build
>> process performance and we want to profile it. I want omake to collect
>> information on how many times it invoked each program (ld, gcc, ocamlc,
>> ocamlopt &c) and how long each of them took. This could be useful to others as
>> well, so I want to contribute the patches back.
>>
>> thanks.
>>
>> _______________________________________________
>> Omake mailing list
>> Omake at metaprl.org
>> https://lists.metaprl.org/mailman/listinfo/omake
>>



More information about the Omake mailing list