Hi Nick,

Thank you for such a detailed response, please see my findings below.

Thanks
Logan

On Thu, Dec 18, 2014 at 4:31 AM, Nick Wellnhofer <[email protected]> wrote:
> On 18/12/2014 06:35, Logan Bell wrote:
>>
>> -1 because I'm unable to build the release candidate with Yosemite Mac OS
>> X.
>>
>> For the first attempt I followed the instructions found in
>> ./perl/INSTALL, with the first set of commands:
>>
>> bash-4.2$ source ../../apache-clownfish-0.4.2/devel/bin/setup_env.sh
>>
>> bash-4.2$ perl Build.PL
>> Base class package "Clownfish::CFC::Perl::Build" is empty.
>>      (Perhaps you need to 'use' the module which defines that package
>> first,
>>          or make that module available in @INC (@INC contains: buildlib
>
>
> That's strange. What's the value of PERL5LIB after sourcing setup_env.sh?
>
>> Also, it's worth noting that setup_env.sh will only work in bash. If
>> sourced in zsh the following happens:
>>
>> perl % source ~/Downloads/apache-clownfish-0.4.2/devel/bin/setup_env.sh
>> Usage: source setup_env.sh path_to_clownfish_source
>
>
> The feature to automatically derive the path to the Clownfish source tree
> only works under bash for now. Under other POSIX-compatible shells, you must
> supply it manually:
>
>     perl % source \
>         ~/Downloads/apache-clownfish-0.4.2/devel/bin/setup_env.sh \
>         ~/Downloads/apache-clownfish-0.4.2
>
> Unfortunately, I couldn't find way to reliably get the filename of a sourced
> script in a POSIX-compatible way. For zsh, it seems that `${(%):-%N}` should
> work:
>
>
> http://stackoverflow.com/questions/9901210/bash-source0-equivalent-in-zsh
>
> That said, setup_env.sh shouldn't be used for release builds, only for
> development. I'd recommend to test the Perl build of a Lucy release
> candidate against an installed version of Clownfish. I typically install
> Clownfish and Clownfish::CFC to a temp directory like this:
>
>     $ cd clownfish/runtime/perl
>     $ perl Build.PL
>     $ ./Build install --install_base=~/tmp_install
>     $ cd ../../compiler/perl
>     $ ./Build install --install_base=~/tmp_install
>     $ export PERL5LIB=~/tmp_install/lib/perl/{archname}
>

I just tried following this exactly on a fresh laptop that has never
had Clownfish or Lucy installed running system Perl 5.18 on Mac OS X
Yosemite

When I get to to the final step in your instructions I still get:

perl % perl Build.PL
Base class package "Clownfish::CFC::Perl::Build" is empty.
    (Perhaps you need to 'use' the module which defines that package first,
    or make that module available in @INC (@INC contains: buildlib
/Users/lbell/tmp_install/lib/perl/{archname}
/Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18
/Network/Library/Perl/5.18/darwin-thread-multi-2level
/Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.2
/System/Library/Perl/5.18/darwin-thread-multi-2level
/System/Library/Perl/5.18
/System/Library/Perl/Extras/5.18/darwin-thread-multi-2level
/System/Library/Perl/Extras/5.18 .).
 at buildlib/Lucy/Build.pm line 23.
BEGIN failed--compilation aborted at buildlib/Lucy/Build.pm line 23.
Compilation failed in require at Build.PL line 21.
BEGIN failed--compilation aborted at Build.PL line 21.



> Then you should be able to build Lucy without sourcing setup_env.sh. This
> was broken in RC1, but should work with RC2.
>
> Nick
>

Reply via email to