On Thu, 12 Sep 2002, Leon Brocard wrote:
> Cool, I've done the past two patches and it compiles but then fails to
> compile parrot shared:
>
> cc -shared -L/usr/local/lib -flat_namespace -o blib/lib/libparrot.so exceptions.o
>global_setup.o interpreter.o parrot.o register.o core_ops.o core_ops_prederef.o
>memory.o packfile.o stacks.o string.o sub.o encoding.o chartype.o runops_cores.o
>trace.o pmc.o key.o hash.o core_pmcs.o platform.o jit.o jit_cpu.o resources.o rx.o
>rxstacks.o intlist.o embed.o warnings.o misc.o core_ops_cg.o packout.obyteorder.o
>debug.o smallobject.o headers.o dod.o method_util.o io/io.o io/io_buf.o io/io_unix.o
>io/io_win32.o io/io_stdio.o classes/array.o classes/boolean.o classes/continuation.o
>classes/coroutine.o classes/csub.o classes/default.o classes/intlist.o
>classes/intqueue.o classes/key.o classes/multiarray.o classes/perlarray.o
>classes/perlhash.o classes/perlint.o classes/perlnum.o classes/perlstring.o
>classes/perlundef.o classes/pointer.o classes/sub.o encodings/singlebyte.o
>encodings/utf8.o encodings/utf16.o encodings/utf32.o chartypes/unicode.o
>chartypes/usascii.o -lm
> cc: unrecognized option `-shared'
Yup, That's a long-standing bug. Here, again, is the correct fix for it.
This (and the appropriate follow-up correction to the cygwin hints file
that's irrelevant for you) is available as
[perl #16937] [PATCH] Configure still using wrong shared library flags.
diff -r -u parrot-orig/config/init/data.pl parrot-andy/config/init/data.pl
--- parrot-orig/config/init/data.pl Thu Aug 29 16:56:29 2002
+++ parrot-andy/config/init/data.pl Mon Sep 2 12:41:02 2002
@@ -39,7 +39,7 @@
ld_out => '-o ', # ld output file
ld_debug => '', # include debug info in executable
- ld_shared => '-shared',
+ ld_shared => $Config{lddlflags},
ld_shared_flags=> '', # What is this, exactly? For GNU ld, it was
# '-Wl,-soname,libparrot$(SO)'
--
Andy Dougherty [EMAIL PROTECTED]
Dept. of Physics
Lafayette College, Easton PA 18042