[lucy-dev] Dumb (?) Lucy build question

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

[lucy-dev] Dumb (?) Lucy build question

Kurt Starsinic
OK, I did a "git pull" on master from git://github.com/apache/lucy.git and
I have a clean checkout. Following the directions in "INSTALL":

% cd 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/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/site_perl/5.19.0/darwin-2level
/Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/site_perl/5.19.0
/Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/5.19.0/darwin-2level
/Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/5.19.0 .).
 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.

I don't see anything in the docs about this, and code diving has not
enlightened me. What am I missing?

- Kurt
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Logan Bell
My first question is, why are you using Perl 5.19 and not 5.20? :)

Thanks,
Logan


On Tue, Jul 8, 2014 at 2:21 PM, Kurt Starsinic <[hidden email]> wrote:

> OK, I did a "git pull" on master from git://github.com/apache/lucy.git and
> I have a clean checkout. Following the directions in "INSTALL":
>
> % cd 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/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/site_perl/5.19.0/darwin-2level
> /Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/site_perl/5.19.0
> /Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/5.19.0/darwin-2level
> /Users/kstar/perl5/perlbrew/perls/perl-5.19.0/lib/5.19.0 .).
>  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.
>
> I don't see anything in the docs about this, and code diving has not
> enlightened me. What am I missing?
>
> - Kurt
>
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Marvin Humphrey
In reply to this post by Kurt Starsinic
On Tue, Jul 8, 2014 at 2:21 PM, Kurt Starsinic <[hidden email]> wrote:
> OK, I did a "git pull" on master from git://github.com/apache/lucy.git and
> I have a clean checkout.

Now that Clownfish and Charmonizer have been broken out of Lucy, getting
started is a little more involved.  Here's a formula:

  git clone https://git-wip-us.apache.org/repos/asf/lucy.git
  git clone https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git \
    clownfish
  git clone https://git-wip-us.apache.org/repos/asf/lucy-charmonizer.git \
    charmonizer
  cd clownfish/runtime/perl
  perl Build.PL
  ./Build test
  cd ../../../lucy/perl
  source ../devel/bin/setup_clownfish_env.sh ../../clownfish
  perl Build.PL
  ./Build test

Marvin Humphrey
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Peter Karman
Marvin Humphrey wrote on 7/8/14 6:14 PM:

> On Tue, Jul 8, 2014 at 2:21 PM, Kurt Starsinic <[hidden email]> wrote:
>> OK, I did a "git pull" on master from git://github.com/apache/lucy.git and
>> I have a clean checkout.
>
> Now that Clownfish and Charmonizer have been broken out of Lucy, getting
> started is a little more involved.  Here's a formula:
>
>   git clone https://git-wip-us.apache.org/repos/asf/lucy.git
>   git clone https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git \
>     clownfish
>   git clone https://git-wip-us.apache.org/repos/asf/lucy-charmonizer.git \
>     charmonizer
>   cd clownfish/runtime/perl
>   perl Build.PL
>   ./Build test
>   cd ../../../lucy/perl
>   source ../devel/bin/setup_clownfish_env.sh ../../clownfish
>   perl Build.PL
>   ./Build test
>

seems like a patch to CONTRIBUTING is in order?

--
Peter Karman  .  http://peknet.com/  .  [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Logan Bell
+1


On Wed, Jul 9, 2014 at 9:36 AM, Peter Karman <[hidden email]> wrote:

> Marvin Humphrey wrote on 7/8/14 6:14 PM:
> > On Tue, Jul 8, 2014 at 2:21 PM, Kurt Starsinic <[hidden email]>
> wrote:
> >> OK, I did a "git pull" on master from git://github.com/apache/lucy.git
> and
> >> I have a clean checkout.
> >
> > Now that Clownfish and Charmonizer have been broken out of Lucy, getting
> > started is a little more involved.  Here's a formula:
> >
> >   git clone https://git-wip-us.apache.org/repos/asf/lucy.git
> >   git clone https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git \
> >     clownfish
> >   git clone https://git-wip-us.apache.org/repos/asf/lucy-charmonizer.git
> \
> >     charmonizer
> >   cd clownfish/runtime/perl
> >   perl Build.PL
> >   ./Build test
> >   cd ../../../lucy/perl
> >   source ../devel/bin/setup_clownfish_env.sh ../../clownfish
> >   perl Build.PL
> >   ./Build test
> >
>
> seems like a patch to CONTRIBUTING is in order?
>
> --
> Peter Karman  .  http://peknet.com/  .  [hidden email]
>
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Logan Bell
Further, I think we should go over the documentation we have on
lucy.apache.org and update accordingly. I don't see any reference to
Clownfish and its associated repo:
http://lucy.apache.org/version_control.html

Thanks,
Logan




On Wed, Jul 9, 2014 at 9:39 AM, Logan Bell <[hidden email]> wrote:

> +1
>
>
> On Wed, Jul 9, 2014 at 9:36 AM, Peter Karman <[hidden email]> wrote:
>
>> Marvin Humphrey wrote on 7/8/14 6:14 PM:
>> > On Tue, Jul 8, 2014 at 2:21 PM, Kurt Starsinic <[hidden email]>
>> wrote:
>> >> OK, I did a "git pull" on master from git://github.com/apache/lucy.git
>> and
>> >> I have a clean checkout.
>> >
>> > Now that Clownfish and Charmonizer have been broken out of Lucy, getting
>> > started is a little more involved.  Here's a formula:
>> >
>> >   git clone https://git-wip-us.apache.org/repos/asf/lucy.git
>> >   git clone https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git
>> \
>> >     clownfish
>> >   git clone
>> https://git-wip-us.apache.org/repos/asf/lucy-charmonizer.git \
>> >     charmonizer
>> >   cd clownfish/runtime/perl
>> >   perl Build.PL
>> >   ./Build test
>> >   cd ../../../lucy/perl
>> >   source ../devel/bin/setup_clownfish_env.sh ../../clownfish
>> >   perl Build.PL
>> >   ./Build test
>> >
>>
>> seems like a patch to CONTRIBUTING is in order?
>>
>> --
>> Peter Karman  .  http://peknet.com/  .  [hidden email]
>>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Peter Karman
Logan Bell wrote on 7/9/14 12:43 PM:
> Further, I think we should go over the documentation we have on lucy.apache.org
> <http://lucy.apache.org> and update accordingly. I don't see any reference to
> Clownfish and its associated repo: http://lucy.apache.org/version_control.html
>


agreed, though I suspect this is what Marvin and Nick are referring to when they
talked about showing/hiding the Clownfish API. Showing it (imo) is documenting
it, and that's the piece that I think we're trying to soft-launch with 0.4 by
intentionally *not* documenting its existence.

However, for people who want to hack on the code and contribute (rather than
simply use it), some elementary bootstrapping instructions like what Marvin
wrote earlier on this thread, would be helpful.

Kurt, if you find Marvin's instructions helpful, would you be willing to work up
a patch to CONTRIBUTING?


--
Peter Karman  .  http://peknet.com/  .  [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Marvin Humphrey
On Wed, Jul 9, 2014 at 9:59 AM, Peter Karman <[hidden email]> wrote:
> agreed, though I suspect this is what Marvin and Nick are referring to when
> they talked about showing/hiding the Clownfish API. Showing it (imo) is
> documenting it, and that's the piece that I think we're trying to
> soft-launch with 0.4 by intentionally *not* documenting its existence.

Yes, that's exactly right -- but fixed cadence releases are also an important
part of the strategy.  A huge amount of work has gone into Clownfish over
several years; rather than publish everything in one overwhelming code drop, I
think we build excitement and community most effectively by releasing
coherent, distilled pieces on a predictable schedule...

First cadence release, later this month: Opaque Clownfish, separated from
Lucy, with a call for hackers.

Second cadence release, August: clownfish-starter, tutorial and a sample
project.

Third cadence release, September: TBD

Marvin Humphrey
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Peter Karman
Marvin Humphrey wrote on 7/9/14 4:26 PM:

> On Wed, Jul 9, 2014 at 9:59 AM, Peter Karman <[hidden email]> wrote:
>> agreed, though I suspect this is what Marvin and Nick are referring to when
>> they talked about showing/hiding the Clownfish API. Showing it (imo) is
>> documenting it, and that's the piece that I think we're trying to
>> soft-launch with 0.4 by intentionally *not* documenting its existence.
>
> Yes, that's exactly right -- but fixed cadence releases are also an important
> part of the strategy.  A huge amount of work has gone into Clownfish over
> several years; rather than publish everything in one overwhelming code drop, I
> think we build excitement and community most effectively by releasing
> coherent, distilled pieces on a predictable schedule...
>
> First cadence release, later this month: Opaque Clownfish, separated from
> Lucy, with a call for hackers.
>
> Second cadence release, August: clownfish-starter, tutorial and a sample
> project.
>
> Third cadence release, September: TBD
>


+1 to committing to a schedule and then working at it.

Marvin and Nick have done a lot of great work on this Clownfish split-off and I
look forward to seeing these releases happen. I'm happy to help where I can.


--
Peter Karman  .  http://peknet.com/  .  [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Kurt Starsinic
So I've been busy, but I just now picked up this issue again. Nick, thanks
for patching the INSTALL. I'll continue to work on this in my Copious Free
Time. I have some comments, in case somebody has a canned response prepared:

lucy/perl/INSTALL claims that one option is to install the "Perl
distributions Clownfish and Clownfish::CFC". I took this to mean that I
would find said distributions on CPAN. However, I did not. Is this an error
in my understanding, or in someone else's uploading?

clownfish/INSTALL seems to suggest that I should be able to cd into
runtime/perl, follow the instructions there, and Bob's your uncle. In
particular, it says that the runtime requires the compiler, and will build
it if necessary. This does not seem to be the case. :(

Later,
Kurt



On Wed, Jul 9, 2014 at 7:40 PM, Peter Karman <[hidden email]> wrote:

> Marvin Humphrey wrote on 7/9/14 4:26 PM:
> > On Wed, Jul 9, 2014 at 9:59 AM, Peter Karman <[hidden email]> wrote:
> >> agreed, though I suspect this is what Marvin and Nick are referring to
> when
> >> they talked about showing/hiding the Clownfish API. Showing it (imo) is
> >> documenting it, and that's the piece that I think we're trying to
> >> soft-launch with 0.4 by intentionally *not* documenting its existence.
> >
> > Yes, that's exactly right -- but fixed cadence releases are also an
> important
> > part of the strategy.  A huge amount of work has gone into Clownfish over
> > several years; rather than publish everything in one overwhelming code
> drop, I
> > think we build excitement and community most effectively by releasing
> > coherent, distilled pieces on a predictable schedule...
> >
> > First cadence release, later this month: Opaque Clownfish, separated from
> > Lucy, with a call for hackers.
> >
> > Second cadence release, August: clownfish-starter, tutorial and a sample
> > project.
> >
> > Third cadence release, September: TBD
> >
>
>
> +1 to committing to a schedule and then working at it.
>
> Marvin and Nick have done a lot of great work on this Clownfish split-off
> and I
> look forward to seeing these releases happen. I'm happy to help where I
> can.
>
>
> --
> Peter Karman  .  http://peknet.com/  .  [hidden email]
>
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Nick Wellnhofer
On Aug 2, 2014, at 23:40 , Kurt Starsinic <[hidden email]> wrote:

> So I've been busy, but I just now picked up this issue again. Nick, thanks
> for patching the INSTALL. I'll continue to work on this in my Copious Free
> Time. I have some comments, in case somebody has a canned response prepared:
>
> lucy/perl/INSTALL claims that one option is to install the "Perl
> distributions Clownfish and Clownfish::CFC". I took this to mean that I
> would find said distributions on CPAN. However, I did not. Is this an error
> in my understanding, or in someone else's uploading?

Clownfish and Clownfish::CFC haven’t been released on CPAN yet.

> clownfish/INSTALL seems to suggest that I should be able to cd into
> runtime/perl, follow the instructions there, and Bob's your uncle. In
> particular, it says that the runtime requires the compiler, and will build
> it if necessary. This does not seem to be the case. :(

If you run ‘perl/Build.PL && ./Build’ in clownfish/runtime/perl, the compiler in clownfish/compiler/perl should be built. The warning about a missing Clownfish::CFC can be ignored. The compiler won’t be installed if you run ‘./Build install’ in runtime/perl, though. You also have to run ‘./Build install’ in compiler/perl.

If you install to a non-standard location, you’ll also have to set the CLOWNFISH_INCLUDE environment variable when building Lucy. This requirement will soon be lifted. The variable should point to the Clownfish/_include directory underneath your install destination.

Another option is to build Lucy from an uninstalled Clownfish source tree. Assuming you're in a directory containing the Clownfish and Lucy repos, run:

    cd clownfish/runtime/perl
    perl Build.PL
    ./Build
    cd ../../..

    source clownfish/devel/bin/setup_env.sh
    cd lucy/perl
    perl Build.PL
    ./Build

Nick


Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

keith20mm
In reply to this post by Marvin Humphrey
When I get to the line:

source ../devel/bin/setup_clownfish_env.sh ../../clownfish

in

Marvin Humphrey wrote

>   git clone https://git-wip-us.apache.org/repos/asf/lucy.git
>   git clone https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git \
>     clownfish
>   git clone https://git-wip-us.apache.org/repos/asf/lucy-charmonizer.git \
>     charmonizer
>   cd clownfish/runtime/perl
>   perl Build.PL
>   ./Build test
>   cd ../../../lucy/perl
>   source ../devel/bin/setup_clownfish_env.sh ../../clownfish
>   perl Build.PL
>   ./Build test

I get the shell reply "Badly placed ()'s."

My shell is csh, so I tried to replace sh in the setup_clownfish_env.sh with
csh, but made no difference, so I put that back to sh.

I looked through the .sh file and found nothing strange in any of the
parenthesis.

What should I try to complete the build?

Thanks in advance.




--
Sent from: http://lucene.472066.n3.nabble.com/lucy-dev-f675133.html
Reply | Threaded
Open this post in threaded view
|

Re: [lucy-dev] Dumb (?) Lucy build question

Nick Wellnhofer
On 17/02/2018 02:06, keith20mm wrote:
> I get the shell reply "Badly placed ()'s."
>
> My shell is csh, so I tried to replace sh in the setup_clownfish_env.sh with
> csh, but made no difference, so I put that back to sh.

setup_clownfish_env.sh is a POSIX shell script and doesn't work under csh.

> What should I try to complete the build?

setup_clownfish_env.sh is a developer tool which allows to build Lucy from an
uninstalled Clownfish source tree. As a normal user, you should install the
Clownfish compiler and runtime before building Lucy:

     cd clownfish/compiler/perl
     perl Build.PL
     ./Build test
     ./Build install

     cd ../../runtime/perl
     perl Build.PL
     ./Build test
     ./Build install

     cd ../../../lucy/perl
     perl Build.PL
     ./Build test
     ./Build install

Nick