building parrot

Andy Dougherty doughera at lafayette.edu
Wed Oct 15 18:25:59 UTC 2008


On Wed, 15 Oct 2008, Michael P. Soulier wrote:


> I'm trying to build parrot on a CentOS 4.6 box and it's failing at link time.
> 
> gcc -o miniparrot src/main.o src/null_config.o \
> -Wl,-rpath=/home/msoulier/downloads/parrot-0.7.1/blib/lib
> -L/home/msoulier/downloads/parrot-0.7.1/blib/lib -lparrot  -lresolv -lnsl -ldl
> -lm -lcrypt -lutil -lpthread -lrt -lgmp -lreadline -lncurses -lcrypto
> -L/usr/local/lib -Wl,-E
> src/main.o(.text+0x5c): In function `main':
> src/main.c:52: undefined reference to `Parrot_new'
> src/main.o(.text+0x6a):src/main.c:53: undefined reference to `imcc_initialize'
> src/main.o(.text+0x86):src/main.c:58: undefined reference to `string_from_cstring'
[ . . . ]

> On Wed, Oct 15, 2008 at 9:52 AM, Will Coleda <will at coleda.com> wrote:
> > Do you have a previously installed parrot? It's possible that we're
> > inadvertently linking against the installed libparrot instead of the
> > one in your build dir.
> 
> No file by that name on the box anywhere.

Are you *sure*?  I don't know exactly what name you searched for, nor how
you searched for it, but this is just the sort of error message I'd expect
to see if you did have an old libparrot.so somewhere else on your system.

To be specific:  The first 'undefined reference' is to Parrot_new.  It
should be in src/embed.o and also in blib/lib/libparrot.so.  What do you
get for the following commands:

	nm src/embed.o | grep 'Parrot_new$'
	nm blib/lib/libparrot.so | grep 'Parrot_new$'

-- 
    Andy Dougherty		doughera at lafayette.edu


More information about the parrot-dev mailing list