# New Ticket Created by Nicholas Clark
# Please include the string: [perl #31208]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org:80/rt3/Ticket/Display.html?id=31208 >
---
osname= darwin
osvers= 7.3.0
arch= darwin-64int-2level
cc= ccache gcc
---
Flags:
category=core
severity=high
ack=no
---
On OS X, if I attempt to follow the instructions in dynclasses/README, it
fails during make -C dynclasses
First failure is:
$ make -C dynclasses
/Users/nick/Sandpit/maint/bin/perl5.8.3 ../classes/pmc2c2.pl --dump foo.pmc
/Users/nick/Sandpit/maint/bin/perl5.8.3 ../classes/pmc2c2.pl --c foo.pmc
can't find file 'foo.dump' in path '/Users/nick/Parrot/parrot24/classes/..',
'/Users/nick/Parrot/parrot24/classes' at ../classes/pmc2c2.pl line 242.
make: *** [foo.c] Error 2
I hack round this with
$ cp dynclasses/foo.dump .
And try again:
$ make -C dynclasses
/Users/nick/Sandpit/maint/bin/perl5.8.3 ../classes/pmc2c2.pl --dump foo.pmc
Use of uninitialized value in numeric gt (>) at ../classes/pmc2c2.pl line 488.
/Users/nick/Sandpit/maint/bin/perl5.8.3 ../classes/pmc2c2.pl --c foo.pmc
env MACOSX_DEPLOYMENT_TARGET=10.3 cc -pipe -fno-common -no-cpp-precomp -pipe
-fno-common -Wno-long-double -g -Dan_Sugalski -Larry -Wall -Wstrict-prototypes
-Wmissing-prototypes -Winline -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings
-Waggregate-return -Winline -W -Wno-unused -Wsign-compare -Wformat-nonliteral
-Wformat-security -Wpacked -Wdisabled-optimization -falign-functions=16 -Wno-shadow
-DHAS_JIT -DPPC -DHAVE_COMPUTED_GOTO -bundle -undefined dynamic_lookup \
-o foo.dylib \
-I../include -I../classes \
-L../blib/lib -lparrot foo.c
ld: warning -L: directory name (arry) does not exist
ld: ../blib/lib/libparrot.dylib is input for the dynamic link editor, is not
relocatable by the static link editor again
make: *** [foo.dylib] Error 1
I'm not sure what the problem is, as ../blib/lib/libparrot.dylib does exist,
and is being found, but we seem to be making some .so specific assumptions
here, or maybe some x86 specific assumptions. I'm not sure how to do this
portably.
Note also that make -C is *not* portable. It's a gnu make-ism.
And that LD_LIBRARY_PATH instruction isn't portable either.
Nicholas Clark
---
Summary of my parrot 0.1.0 configuration:
configdate='Tue Aug 17 12:12:23 2004'
Platform:
osname=darwin, archname=darwin-2level
jitcapable=1, jitarchname=ppc-darwin,
jitosname=DARWIN, jitcpuarch=ppc
execcapable=1
perl=/Users/nick/Sandpit/maint/bin/perl5.8.3
Compiler:
cc='ccache gcc', ccflags='-pipe -fno-common -no-cpp-precomp -pipe -fno-common
-Wno-long-double ',
Linker and Libraries:
ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags=' -flat_namespace ',
cc_ldflags='',
libs='-lm'
Dynamic Linking:
so='.dylib', ld_shared=' -bundle -undefined dynamic_lookup',
ld_shared_flags=''
Types:
iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
ptrsize=4, ptr_alignment=1 byteorder=4321,
nv=double, numvalsize=8, doublesize=8
---
Environment:
DYLD_LIBRARY_PATH HOME LANG LANGUAGE LD_LIBRARY_PATH LOGDIR PATH
PERL5LIB SHELL