On 22/01/2008, chromatic <[EMAIL PROTECTED]> wrote:
> On Monday 21 January 2008 08:58:25 Paul Cochrane wrote:
>
> > when building parrot on Solaris I get most of the way through the
> > build, but right at the end, building pbc_to_exe fails with the
> > following output:
>
> > It seems that the Makefile macro $(LIBPARROT_STATIC) isn't being
> > expanded.  I had a bit of a look around and found the following lines
> > in config_lib.pasm (which is used for the configuration information
> > necessary to build pbc_to_exe):
> >
> > set P0["libparrot"], "$(LIBPARROT_STATIC)"
> > set P0["libparrot_ldflags"], "$(LIBPARROT_STATIC)"
> >
> > further digging showed that these values are set within
> > config/inter/libparrot.pm, and the code in there seems perfectly sane
> > (especially considering that the value would be later expanded by
> > make).  Unfortunately, from here I don't know where else to look to
> > solve the problem, however it is stopping me from building parrot on
> > the Solaris platform at present.
>
> Are you building Parrot as static or shared?  What happens if you switch to
> shared?

I'm just using C<perl Configure.pl> to configure the build, and it's
setting the build to be static.  Using C<perl Configure.pl
--parrot_is_shared> doesn't make a difference as Configure still
determines that it's not building a shared parrot.

> Is LIBPARROT_STATIC defined correctly in your Makefile?

LIBPARROT_STATIC = blib/lib/libparrot.a

This looks good to me.  This is the value I would expect the
C<libparrot> configuration value to be expanded to in config_lib.pasm.
 However, LIBPARROT is in the Makefile:

LIBPARROT = $(LIBPARROT_STATIC)

Which I would guess comes directly from the configured value, and
hence why the value is carried over to config_lib.pasm, although I'm
confused as to why this issue of not having an expanded value only
occurs on Solaris and not on other Unix based systems.

Paul

Reply via email to