Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Perl: porters

make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'.

 

 

Perl porters RSS feed   Index | Next | Previous | View Threaded


philippe.bruhat at free

Feb 2, 2008, 5:59 AM

Post #1 of 6 (11236 views)
Permalink
make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'.

Hi,

I just tried to compile Perl 5.8.8 on my Linux Debian, with

./Configure -des -Dprefix=/opt/my && make

And got this:

First let's make sure your kit is complete. Checking...
<copious amount of stuff removed>
Now you must run 'make'.

If you compile perl5 on a different machine or from a different object
directory, copy the Policy.sh file from this object directory to the
new one before you run Configure -- this will help you with most of
the policy defaults.

make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. Stop.

I've tried on another Linux system, and it compiled correctly, which
leads me to think that my system is kinda broken (although Perl 5.10.0
compiled correctly on the same machine).

Has anyone already met this problem?

--
Philippe Bruhat (BooK)

When it is time for voting- / In the West or in the East-
Why must we always settle for- / The man we hate the least?
(Intro poem to Groo The Wanderer #108 (Epic))


andreas.koenig.7os6VVqR at franz

Feb 2, 2008, 6:21 AM

Post #2 of 6 (10660 views)
Permalink
Re: make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. [In reply to]

>>>>> On Sat, 2 Feb 2008 14:59:30 +0100, "Philippe Bruhat (BooK)" <philippe.bruhat [at] free> said:

> Hi,
> I just tried to compile Perl 5.8.8 on my Linux Debian, with

> ./Configure -des -Dprefix=/opt/my && make

> And got this:

> First let's make sure your kit is complete. Checking...
> <copious amount of stuff removed>
> Now you must run 'make'.

> If you compile perl5 on a different machine or from a different object
> directory, copy the Policy.sh file from this object directory to the
> new one before you run Configure -- this will help you with most of
> the policy defaults.

> make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. Stop.

> I've tried on another Linux system, and it compiled correctly, which
> leads me to think that my system is kinda broken (although Perl 5.10.0
> compiled correctly on the same machine).

> Has anyone already met this problem?

I'm surprised. I know a similar problem with old perls and new
compilers and I solve it with

perl -i~ -nle 'print unless /<(built-in|command line)>/' makefile x2p/makefile

Note, that I have no dash between 'command' and 'line'.

I suppose you hit a variant of the same problem. It's simply something
unexpected being output by some tool and then being written to the
Makefile.

--
andreas


doughera at lafayette

Feb 2, 2008, 8:31 AM

Post #3 of 6 (10675 views)
Permalink
Re: make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. [In reply to]

On Sat, 2 Feb 2008, (Andreas J. Koenig) wrote:

> >>>>> On Sat, 2 Feb 2008 14:59:30 +0100, "Philippe Bruhat (BooK)" <philippe.bruhat [at] free> said:
>
> > Hi,
> > I just tried to compile Perl 5.8.8 on my Linux Debian, with
>
> > ./Configure -des -Dprefix=/opt/my && make
>
> > And got this:
>

> > make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. Stop.

> I'm surprised. I know a similar problem with old perls and new
> compilers and I solve it with
>
> perl -i~ -nle 'print unless /<(built-in|command line)>/' makefile x2p/makefile
>
> Note, that I have no dash between 'command' and 'line'.
>
> I suppose you hit a variant of the same problem. It's simply something
> unexpected being output by some tool and then being written to the
> Makefile.

It's output of gcc during the 'make depend' process. We try to filter out
those non-files, but the output of gcc has changed somewhat over the
years, and the filtering isn't perfect.

In any case, just edit 'makefile' (note -- that's 'makefile', not
'Makefile') and remove any lines with 'command-line' in them.

Hope this helps,

--
Andy Dougherty doughera [at] lafayette


philippe.bruhat at free

Feb 2, 2008, 12:29 PM

Post #4 of 6 (10654 views)
Permalink
Re: make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. [In reply to]

On Sat, Feb 02, 2008 at 11:31:18AM -0500, Andy Dougherty wrote:
>
> > > make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. Stop.
>
> > I'm surprised. I know a similar problem with old perls and new
> > compilers and I solve it with
> >
> > I suppose you hit a variant of the same problem. It's simply something
> > unexpected being output by some tool and then being written to the
> > Makefile.
>
> It's output of gcc during the 'make depend' process.

$ gcc --version
gcc (GCC) 4.2.3 20080114 (prerelease) (Debian 4.2.2-7)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

> We try to filter out
> those non-files, but the output of gcc has changed somewhat over the
> years, and the filtering isn't perfect.

Just out of curiosity, where is the filtering done?

> In any case, just edit 'makefile' (note -- that's 'makefile', not
> 'Makefile') and remove any lines with 'command-line' in them.

Thanks to And(y|reas), it compiled.

--
Philippe Bruhat (BooK)

The only way to get a better government is to get better voters.
(Moral from Groo The Wanderer #109 (Epic))


ben at morrow

Feb 2, 2008, 1:11 PM

Post #5 of 6 (10656 views)
Permalink
Re: make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. [In reply to]

Quoth philippe.bruhat [at] free ("Philippe Bruhat (BooK)"):
> On Sat, Feb 02, 2008 at 11:31:18AM -0500, Andy Dougherty wrote:
> >
> > It's output of gcc during the 'make depend' process.
> > We try to filter out
> > those non-files, but the output of gcc has changed somewhat over the
> > years, and the filtering isn't perfect.
>
> Just out of curiosity, where is the filtering done?

makedepend, made from makedepend.SH by Configure. Both 5.10.0 and
5.8.9-tobe filter both <command line> and <command-line>, while 5.8.8
only filters the former, so I guess gcc annoyingly changed the output
recently.

Ben


nick at ccl4

Feb 2, 2008, 1:32 PM

Post #6 of 6 (10656 views)
Permalink
Re: make: *** No rule to make target `<command-line>', needed by `miniperlmain.o'. [In reply to]

On Sat, Feb 02, 2008 at 09:29:56PM +0100, Philippe Bruhat (BooK) wrote:
> On Sat, Feb 02, 2008 at 11:31:18AM -0500, Andy Dougherty wrote:

> > We try to filter out
> > those non-files, but the output of gcc has changed somewhat over the
> > years, and the filtering isn't perfect.
>
> Just out of curiosity, where is the filtering done?

Search for "builtin" in makedepend (which in turn is written by makedepend.SH)
There you will find a bunch of sed substitutions.

It looks like we "got" this one here:

http://public.activestate.com/cgi-bin/perlbrowse/p/28615

mmm, and I merged it to 5.8.x about 50 weeks' ago:

http://public.activestate.com/cgi-bin/perlbrowse/p/30206

and then got side tracked by something that overran beyond my control and
prevented 5.8.9. And then more real life(TM) intervened.

However, it is coming soon* - working on merging stuff right now. **

Nicholas Clark

* For some value of soon. Contents may settle during transit. Might have fun
on VMS.
** Currently I "own" perbrowse. Mine, all mine!
http://public.activestate.com/cgi-bin/perlbrowse?top=&show_recent=Show+Change+Log

Perl porters RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.