Simone Roghi wrote:
> Hi,
> I'm trying to build qc-- on FreeBSD.
> At the beginning, it gave me this error:
> $ mk all all.opt
> ...
> cp qc-- ../bin/qc--
> + cd runtime
> + mk depend
> warning: skipping missing include file: DEPEND: No such file or directory
> notangle -L -filter "../config/nocond $config_arch" runtime.nw
> -Rruntime.c > runtime.c
> ignoring undefined chunk name: <<machine-dependent macro definitions
> for the implementation>>
> mk: notangle -L -filter ... : exit status=exit(2), deleting 'runtime.c'
> + exit 1
> mk: ./mkdirs src runtime : exit status=exit(1),
> but I solved using the following patch:
>
> --- runtime.nw.orig 2008-06-20 15:13:56.000000000 +0200
> +++ runtime.nw 2008-06-20 15:14:11.000000000 +0200
> @@ -78,6 +78,11 @@
> \section{Implementation}
>
> First, the machine-dependent register information.
> +<<machine-dependent macro definitions for the public interface
> ((x86-bsd))>>=
> +#define NUM_REGS 12
> +<<machine-dependent macro definitions for the implementation
> ((x86-bsd))>>=
> +#define ESP 8 /* r[4] */
> +#define PC 0 /* c[0] */
> <<machine-dependent macro definitions for the public interface
> ((x86-linux))>>=
> #define NUM_REGS 12
> <<machine-dependent macro definitions for the implementation
> ((x86-linux))>>=
>
> It worked, but then I got another error:
>
> "mk: don't know how to make 'x86-bsd.o"
>
> So I added the following lines to runtime/mkfile:
>
> x86-bsd.o: x86cont.s
> nasm -f elf $target $prereq && brandelf -f Linux x86-bsd.o
> but it didn't work:
> + mk update
> ocamlc -g -I ../lib -ccopt -L../lib -custom -o qc-- unix.cma str.cma
> cllib.cma asdl.cma lua.cma rtllib.cma gen.cma camlburg.cmo
> ../lib/uint64p.o alignment.cmo asm.cmo auxfuns.cmo bitset64.cmo ep.cmo
> eqn.cmo error.cmo astpp.cmo float.cmo idcode.cmo interval.cmo
> lifetime.cmo liveset.cmo metrics.cmo reinit.cmo idgen.cmo nast.cmo
> parse.cmo scan.cmo space.cmo mipsregs.cmo sparcregs.cmo strutil.cmo
> ctypes.cmo mangle.cmo talloc.cmo context.cmo this.cmo luautil.cmo
> topsort.cmo tx.cmo types.cmo rtlop.cmo interpemitrtl.cmo opshape.cmo
> rtldebug.cmo rtlutil.cmo avail.cmo dag.cmo mflow.cmo box.cmo
> ppcrec.cmo rtleqn.cmo simplify.cmo spans.cmo cfg.cmo cfgx.cmo
> varmap.cmo property.cmo unique.cmo x86regs.cmo x86rec.cmo fenv.cmo
> target.cmo zipcfg.cmo dataflow.cmo availpass.cmo dead.cmo
> dominator.cmo typecheck.cmo vfp.cmo block.cmo elabexp.cmo elabstmt.cmo
> memalloc.cmo nelab.cmo automaton.cmo automatongraph.cmo
> automatonutil.cmo rewrite.cmo astasm.cmo bcopy.cmo call.cmo
> callspec.cmo contn.cmo mvalidate.cmo proc.cmo preast2ir.cmo interp.cmo
> cfgutil.cmo live.cmo dotasm.cmo optimize.cmo pic.cmo ppcasm.cmo
> registerclass.cmo runtimedata.cmo ast2ir.cmo backplane.cmo
> colorgraph.cmo dls.cmo flowra.cmo driver.cmo postexpander.cmo
> expander.cmo interpemit.cmo interpasm.cmo peephole.cmo placevar.cmo
> ppc.cmo stack.cmo widen.cmo x86asm.cmo x86call.cmo x86.cmo dummy.cmo
> lualink.cmo main.cmo zipncfg.cmo
> cp qc-- ../bin/qc--
> + cd runtime
> + mk depend
> mk: 'depend' is up to date
> + mk update
> tmp=/tmp/cut$$
> ../bin/qc-- Options.swap=nil -S -o $tmp cut.c--
> sed '/globalsig/d;/ref_to_global_area/d' $tmp > cut.s
> rm -f $tmp
> lua: access to undefined table with key As
> Stack trace:
> `error' fallback (OCaml)
> `gettable' fallback in file "luadriver.nw", line 898 column 5
> main of dostring('
> Config = Config or { }
> Config.install_bin = '/usr/local/bin...') in file "luadriver.nw", line
> 234 column 1
> function dostring (OCaml)
> function Util.dosearchfile (OCaml)
> main of dostring('Util.dosearchfile('qc--.lua', Boot)') defined in
> file dostring('Util.dosearchfile('qc--.lua', Boot)')
> Lua interpreter halted with error
> sed: /tmp/cut60927: No such file or directory
> mk: tmp=/tmp/cut$$ ../bin/qc-- ... : exit status=exit(1), deleting
> 'cut.s'
> + exit 1
> mk: ./mkdirs src runtime : exit status=exit(1)
>
>
I solved the problem editing a line in luadriver.nw.
Then I got other errors (many errors!), but I have successfully built
qc-- and now it works well!
_______________________________________________
Cminusminus mailing list
[email protected]
https://cminusminus.org/mailman/listinfo/cminusminus