[Omake] can't find the error in my omakefile
micha
micha-1 at fantasymail.de
Mon Feb 12 01:50:47 PST 2007
hi,
when running omake it outputs:
------------------------------------------------------------------------------------------------
*** omake: reading OMakefiles
*** omake: finished reading OMakefiles (0.0 sec)
- build . hello.run
+ ocamlc.opt -warn-error A -g -I . -custom -o hello.run ask.cmo
color.cmo draw.cmo font.cmo labeltype.cmo box.cmo widget.cmo window.cmo
hello.cmo valuator.cmo libofltk.a -cclib "-lstdc++ -L/usr/local/lib
-lfltk2 -lX11 -lXi -lm -lsupc++"
/usr/local/godi/bin/ocamlc.opt: unknown option `-L/usr/local/lib'.
Usage: ocamlc <options> <files>
Options are:
-a Build a library
-c Compile only (do not link)
-cc <command> Use <command> as the C compiler and linker
-cclib <opt> Pass option <opt> to the C linker
-ccopt <opt> Pass option <opt> to the C compiler and linker
-config print configuration values and exit
-custom Link in custom mode
-dllib <lib> Use the dynamically-loaded library <lib>
-dllpath <dir> Add <dir> to the run-time search path for shared libraries
-dtypes Save type information in <filename>.annot
-for-pack <ident> Ignored (for compatibility with ocamlopt)
-g Save debugging information
-i Print inferred interface
-I <dir> Add <dir> to the list of include directories
-impl <file> Compile <file> as a .ml file
-intf <file> Compile <file> as a .mli file
-intf-suffix <string> Suffix for interface files (default: .mli)
-intf_suffix <string> (deprecated) same as -intf-suffix
-labels Use commuting label mode
-linkall Link all modules, even unused ones
-make-runtime Build a runtime system with given C objects and libraries
-make_runtime (deprecated) same as -make-runtime
-modern (deprecated) same as -labels
-noassert Don't compile assertion checks
-noautolink Don't automatically link C libraries specified in .cma files
-nolabels Ignore non-optional labels in types
-nostdlib do not add default directory to the list of include directories
-o <file> Set output file name to <file>
-output-obj Output a C object file instead of an executable
-pack Package the given .cmo files into one .cmo
-pp <command> Pipe sources through preprocessor <command>
-principal Check principality of type inference
-rectypes Allow arbitrary recursive types
-thread Generate code that supports the system threads library
-unsafe No bounds checking on array and string access
-use-runtime <file> Generate bytecode for the given runtime system
-use_runtime <file> (deprecated) same as -use-runtime
-v Print compiler version and location of standard library and exit
-version Print compiler version and exit
-verbose Print calls to external commands
-vmthread Generate code that supports the threads library with VM-level
scheduling
-w <flags> Enable or disable warnings according to <flags>:
C/c enable/disable suspicious comment
D/d enable/disable deprecated features
E/e enable/disable fragile match
F/f enable/disable partially applied function
L/l enable/disable labels omitted in application
M/m enable/disable overriden method
P/p enable/disable partial match
S/s enable/disable non-unit statement
U/u enable/disable unused match case
V/v enable/disable hidden instance variable
Y/y enable/disable suspicious unused variables
Z/z enable/disable all other unused variables
X/x enable/disable all other warnings
A/a enable/disable all warnings
default setting is "Aelz"
-warn-error <flags> Treat the warnings of <flags> as errors, if they are
enabled. See option -w for the list of flags.
Default setting is "a" (warnings are not errors)
-where Print location of standard library and exit
-nopervasives (undocumented)
-dparsetree (undocumented)
-drawlambda (undocumented)
-dlambda (undocumented)
-dinstr (undocumented)
-use-prims <file> (undocumented)
- <file> Treat <file> as a file name (even if it starts with `-')
-help Display this list of options
--help Display this list of options
*** omake: 104/109 targets are up to date
*** omake: failed (0.1 sec, 0/26 scans, 1/33 rules, 0/209 digests)
*** omake: targets were not rebuilt because of errors:
hello.run
------------------------------------------------------------------------------------------------
but when running the command myself it works:
ocamlc.opt -warn-error A -g -I . -custom -o hello.run ask.cmo color.cmo
draw.cmo font.cmo labeltype.cmo box.cmo widget.cmo window.cmo hello.cmo
valuator.cmo libofltk.a -cclib "-lstdc++ -L/usr/local/lib -lfltk2 -lX11
-lXi -lm -lsupc++"
that works and my hello.run runs :-)
I just can't find my error in the makefile (at the end of this post)
any ideas?
cheers,
Michael
-----------------------------------------------------------------------------
(I'm using debian egde, athlon xp, linux 2.6.17, ocaml 3.09.1, omake 0.9.8)
OMakefile (without most comments) :
.PHONY: all install clean
#c part
INCLUDES += /usr/local/include/ /usr/local/godi/lib/ocaml/std-lib
LIBFILES[] =
obox
odraw
ofont
oslider
owindow
obutton
ofl
ointinput
owidget
LIB = libofltk
.DEFAULT: $(StaticCLibrary $(LIB), $(LIBFILES))
# ocaml part
FILES[] =
hello
ask
box
color
draw
font
labeltype
valuator
widget
window
PROGRAM = hello
OCAML_CLIBS += libofltk
NATIVE_ENABLED = false
BYTE_ENABLED = true
OCAML_LINK_FLAGS = -cclib \"-lstdc++ -L/usr/local/lib -lfltk2 -lX11 -lXi
-lm -lsupc++\"
.DEFAULT: $(OCamlProgram $(PROGRAM), $(FILES))
More information about the Omake
mailing list