On Dec 11, 2006, at 9:42 AM, jerry gay wrote:

On 12/10/06, James E Keenan <[EMAIL PROTECTED]> wrote:
James E Keenan wrote:

And now here's what I got with

perl Configure.pl  (i.e., no options)
vi Makefile (to eliminate -bundle from LD_LOAD_FLAGS)
make

Failure at this point has now become frequently observed.


[parrot] 631 $ perl Configure.pl
[parrot] 632 $ vi Makefile # to delete -bundle from LD_LDOAD_FLAGS
[parrot] 633 $ make

<snip most of configure/make output>

c++ -dynamiclib -undefined suppress -L/usr/local/lib -L/Users/jimk/ work/parrot/blib/lib -flat_namespace -o blib/lib/libparrot. 0.4.7.dylib -install_name /usr/local/lib/libparrot.dylib \ src/ops/core_ops.o src/ops/core_ops_switch.o src/asmfun.o src/ ops/core_ops_cg.o src/ops/core_ops_cgp.o src/exec.o src/exec_cpu.o src/exec_save.o src/charset.o src/encoding.o src/exceptions.o src/ global_setup.o src/interpreter.o src/inter_call.o src/inter_cb.o src/inter_create.o src/inter_misc.o src/inter_run.o src/register.o src/memory.o src/objects.o src/packfile.o src/stacks.o src/ stack_common.o src/string.o src/string_primitives.o src/sub.o src/ runops_cores.o src/trace.o src/pmc.o src/pmc_freeze.o src/key.o src/hash.o src/core_pmcs.o src/platform.o src/jit.o src/jit_cpu.o src/jit_debug.o src/jit_debug_xcoff.o src/intlist.o src/list.o src/ library.o src/global.o src/embed.o src/warnings.o src/packout.o src/byteorder.o src/debug.o src/smallobject.o src/headers.o src/ hll.o src/dod.o src/gc_ims.o src/gc_gms.o src/exit.o src/misc.o src/spf_render.o src/spf_vtable.o src/datatypes.o src/ fingerprint.o src/nci.o src/cpu_dep.o src/tsq.o src/longopt.o src/ events.o src/thread.o src/dynext.o src/utils.o src/vtables.o src/ pic.o src/pic_jit.o src/mmd.o src/builtin.o src/extend.o src/ extend_vtable.o src/revision.o src/packfile/pf_items.o src/stm/ backend.o src/stm/waitlist.o src/resources.o src/charset/ascii.o src/charset/binary.o src/charset/iso-8859-1.o src/charset/tables.o src/charset/unicode.o src/io/io.o src/io/io_buf.o src/io/ io_layers.o src/io/io_unix.o src/io/io_utf8.o src/io/io_mmap.o src/ io/io_win32.o src/io/io_stdio.o src/io/io_string.o src/io/ io_passdown.o src/pmc/default.o src/pmc/null.o src/pmc/env.o src/ pmc/key.o src/pmc/random.o src/pmc/unmanagedstruct.o src/pmc/ managedstruct.o src/pmc/delegate.o src/pmc/csub.o src/pmc/ compiler.o src/pmc/exception.o src/pmc/version.o src/pmc/ vtablecache.o src/pmc/parrotio.o src/pmc/parrotlibrary.o src/pmc/ parrotinterpreter.o src/pmc/parrotthread.o src/pmc/lexpad.o src/ pmc/timer.o src/pmc/pointer.o src/pmc/sub.o src/pmc/closure.o src/ pmc/continuation.o src/pmc/retcontinuation.o src/pmc/ exception_handler.o src/pmc/coroutine.o src/pmc/eval.o src/pmc/ nci.o src/pmc/float.o src/pmc/integer.o src/pmc/bigint.o src/pmc/ complex.o src/pmc/string.o src/pmc/boolean.o src/pmc/ref.o src/pmc/ sharedref.o src/pmc/array.o src/pmc/fixedintegerarray.o src/pmc/ intlist.o src/pmc/iterator.o src/pmc/sarray.o src/pmc/ fixedstringarray.o src/pmc/multiarray.o src/pmc/hash.o src/pmc/ orderedhash.o src/pmc/tqueue.o src/pmc/parrotclass.o src/pmc/ parrotobject.o src/pmc/os.o src/pmc/file.o src/pmc/addrregistry.o src/pmc/bound_nci.o src/pmc/capture.o src/pmc/deleg_pmc.o src/pmc/ enumerate.o src/pmc/fixedbooleanarray.o src/pmc/fixedfloatarray.o src/pmc/fixedpmcarray.o src/pmc/lexinfo.o src/pmc/multisub.o src/ pmc/namespace.o src/pmc/pair.o src/pmc/parrotrunningthread.o src/ pmc/resizablebooleanarray.o src/pmc/resizablefloatarray.o src/pmc/ resizableintegerarray.o src/pmc/resizablepmcarray.o src/pmc/ resizablestringarray.o src/pmc/scalar.o src/pmc/slice.o src/pmc/ stmlog.o src/pmc/stmref.o src/pmc/stmvar.o src/pmc/super.o src/pmc/ undef.o src/encodings/fixed_8.o src/encodings/ucs2.o src/encodings/ utf16.o src/encodings/utf8.o compilers/imcc/imcparser.o compilers/ imcc/imclexer.o compilers/imcc/imc.o compilers/imcc/symreg.o compilers/imcc/instructions.o compilers/imcc/cfg.o compilers/imcc/ reg_alloc.o compilers/imcc/sets.o compilers/imcc/debug.o compilers/ imcc/optimizer.o compilers/imcc/pbc.o compilers/imcc/parser_util.o compilers/imcc/pcc.o -lm -lgmp ld: common symbols not allowed with MH_DYLIB output format with the -multi_module option /usr/local/lib/libgmp.a(mp_bpl.o) definition of common ___gmp_junk (size 4)
/usr/bin/libtool: internal link edit command failed
make: *** [blib/lib/libparrot.0.4.7.dylib] Error 1
[parrot] 634 $

i note two things here.
1) you're using a c++ compiler to perform linking here. that's
destined for failure, and is why C<--cc=gcc> has been suggested as a
C<Configure.pl> option.

No, this is correct on OS X. Here's my shell script for running config:

#!/bin/sh
CC="ccache gcc-4.0"
CX="ccache g++-4.0"
/usr/bin/perl Configure.pl --cc="$CC" --cxx="$CX" --link="$CX" -- ld="$CX" --without-icu $@

You can s/ccache //g for the same effect sans without caching.

Regards.

2) you're attempting to link with an installed, yet broken C<gmp>
implementation, which is why C<--without-gmp> was created in the first
place. unless you remove C<gmp> from your system, you'll need to
continue using the C<--without-gmp> option, since linking will fail
otherwise.

therefore, i suggest you continue to use C<Configure.pl --without-gmp
--cc=gcc> every time you configure parrot.

i can't speak to C<--ccflags=-DAN>, because i'm not familiar with the
options. however, i see in a previous message, you attempted to run
C<Configure.pl --without-gmp --cc=gcc> (as i suggest) and it gave you
errors during execution. those errors, during compiler detection,
point you to look at a temporary file called F<test.cco>. if you could
provide the contents of this file in a reply, it would greatly aid in
debugging, and may explain why C<--ccflags=-DAN> was suggested. (i'll
research that in the meantime.)

~jerry

After talking to James on #parrot, I think the root of his problem is that he's not using apple-standard gcc. I'd like to see the results of using an apple-installed version of gcc/g++.

--
Will "Coke" Coleda
[EMAIL PROTECTED]


Reply via email to