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}
Then you should be able to build Lucy without sourcing setup_env.sh. This was
broken in RC1, but should work with RC2.
Nick