On Sunday 30 December 2007 08:15:26 James Keenan wrote:
> Doing a fresh checkout from trunk at r24302, I was able to get perl6
> up and running on Linux following chromatic's instructions on
> use.perl.org (with one correction).
>
> However, I was not so succesful on ppc-darwin. Here's the data:
/usr/local/bin/perl tools/dev/pbc_to_c_gen.pl \
'./CFLAGS /usr/bin/gcc-3.3 "" -I./include -fno-common -no-cpp-precomp
-pipe -I/usr/local/include
-pipe -fno-common -Wno-long-double -DHASATTRIBUTE_CONST
-DHASATTRIBUTE_DEPRECATED
-DHASATTRIBUTE_FORMAT -DHASATTRIBUTE_MALLOC -DHASATTRIBUTE_NONNULL
-DHASATTRIBUTE_NORETURN
-DHASATTRIBUTE_PURE -DHASATTRIBUTE_UNUSED -falign-functions=16 -W -Wall
-Waggregate-return
-Wbad-function-cast -Wcast-align -Wcast-qual -Wchar-subscripts -Wcomment
-Wdisabled-optimization
-Wformat-nonliteral -Wformat-security -Wformat-y2k -Wimplicit
-Wimplicit-function-declaration
-Wimplicit-int -Wimport -Winline -Winvalid-pch -Wmain -Wmissing-braces
-Wmissing-declarations
-Wmissing-prototypes -Wnested-externs -Wno-endif-labels -Wno-shadow
-Wno-unused -Wnonnull -Wpacked
-Wparentheses -Wpointer-arith -Wreturn-type -Wsequence-point
-Wsign-compare -Wstrict-aliasing
-Wswitch -Wswitch-default -Wtrigraphs -Wundef -Wunknown-pragmas
-Wwrite-strings -g -Wno-shadow
-DHAS_JIT -DPPC -DHAVE_COMPUTED_GOTO -I. -o \
-o blib/lib/libparrot.a -lm -L/usr/local/lib -L/sw/lib ' \
> pbc_to_c.pir
The problem is -o -o in the two lines of the pbc_to_exe rule in the Makefile,
and I suspect that that's because you're linking against libparrot.a not
libparrot.so. (Parrot::Embed failed for Tim Bunce for similar reasons.)
I don't know the particular Makefile/compiler magic to get the right flags
passed to the program; someone who understands linking on Darwin better than
I will have to figure out what it needs.
Getting rid of both -o flags should help though.
-- c