Hi,
Parrot's been failing to build on my ibook without a little help.
Here's the error:
Compiling with:
xx.c
gcc -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Waggregate-return -Winline -W -Wno-unused -Wsign-compare -Wformat-nonliteral -Wformat-security -Wpacked -Wdisabled-optimization -Wno-shadow -falign-functions=16 -I./include -I/usr/include -DHAS_JIT -DPPC -DHAVE_COMPUTED_GOTO -I. -o xx.o -c xx.c
c++ -o parrot -L/usr/local/lib -Wl,-E -g imcc/main.o blib/lib/libparrot.a -lpthread -lnsl -ldl -lm -lcrypt -lutil -lrt -lgmp -lpthread -lm -L/usr/lib -licuuc -licudata -lpthread -lm
blib/lib/libparrot.a(jit_cpu.o)(.text+0x2722): In function `Parrot_end_jit':
src/jit_cpu.c:74: undefined reference to `Parrot_ppc_jit_restore_nonvolatile_registers'
blib/lib/libparrot.a(jit_cpu.o)(.text+0x2726):src/jit_cpu.c:74: undefined reference to `Parrot_ppc_jit_restore_nonvolatile_registers'
blib/lib/libparrot.a(jit_cpu.o)(.text+0x274e):src/jit_cpu.c:74: undefined reference to `Parrot_ppc_jit_restore_nonvolatile_registers'
blib/lib/libparrot.a(jit_cpu.o)(.text+0x2752):src/jit_cpu.c:74: undefined reference to `Parrot_ppc_jit_restore_nonvolatile_registers'
blib/lib/libparrot.a(jit_cpu.o)(.text+0x2772):src/jit_cpu.c:74: undefined reference to `Parrot_ppc_jit_restore_nonvolatile_registers'
blib/lib/libparrot.a(jit_cpu.o)(.text+0x2776):src/jit_cpu.c:74: more undefined references to `Parrot_ppc_jit_restore_nonvolatile_registers' follow
collect2: ld returned 1 exit status
make: *** [parrot] Error 1
So, I just commented out line 14 of jit/ppc/core.jit [patch attached],
recompiled, and ran "make fulltest". Only one test failed (test 5 of
t/dynclass/pyclass.t). I'm guessing that merely commenting that line
out is *not* The Right Way(TM) and that it might break things on other
platforms. Hopefully, somebody knows The Right Solution(TM). :-)
Jeff
> So, I just commented out line 14 of jit/ppc/core.jit [patch attached],
> recompiled, and ran "make fulltest". Only one test failed (test 5 of
> t/dynclass/pyclass.t). I'm guessing that merely commenting that line
> out is *not* The Right Way(TM) and that it might break things on other
> platforms. Hopefully, somebody knows The Right Solution(TM). :-)
Bug #32514 has a Righter Solution. I don't claim that it's The Right,
but I think it does allow JITting.
-- c
Ah yes, your patch seems to be about infinitely more Right, even if it's
not The Right. I take it that bug #32514 is still awaiting some TLC by
a Configure hacker?
If somebody could delete this ticket for me, that would be great. I
need to learn to search this RT thing before I file a new ticket. Sorry
about the noise.
Jeff