public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] make.conf  MAKEOPTS=-j2
@ 2009-08-02 13:20 David Relson
  2009-08-02 15:36 ` [gentoo-user] " Nikos Chantziaras
  2009-08-02 16:23 ` [gentoo-user] " Neil Bothwick
  0 siblings, 2 replies; 14+ messages in thread
From: David Relson @ 2009-08-02 13:20 UTC (permalink / raw
  To: gentoo-user

I've had trouble building dev-util/duma and discovered this morning that
-j2 was the culprit.  duma's build compiles and runs createconf.c in
order to create duma_config.h which is needed by dumapp.cpp.  With -j2,
the cpp compilation is starting before createconf finishes running and
this causes the emerge to die.

How does one set a special MAKEOPTS for a particular package?



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-02 13:20 [gentoo-user] make.conf MAKEOPTS=-j2 David Relson
@ 2009-08-02 15:36 ` Nikos Chantziaras
  2009-08-02 16:23 ` [gentoo-user] " Neil Bothwick
  1 sibling, 0 replies; 14+ messages in thread
From: Nikos Chantziaras @ 2009-08-02 15:36 UTC (permalink / raw
  To: gentoo-user

On 08/02/2009 04:20 PM, David Relson wrote:
> I've had trouble building dev-util/duma and discovered this morning that
> -j2 was the culprit.  duma's build compiles and runs createconf.c in
> order to create duma_config.h which is needed by dumapp.cpp.  With -j2,
> the cpp compilation is starting before createconf finishes running and
> this causes the emerge to die.
>
> How does one set a special MAKEOPTS for a particular package?

AFAIK, you can't.  This has to be fixed either by upstream or patched in 
portage or the ebuild must manually use -j1.

Since you reported this on Gentoo's bugzilla, one of the above should 
happen soon :)




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user] make.conf  MAKEOPTS=-j2
  2009-08-02 13:20 [gentoo-user] make.conf MAKEOPTS=-j2 David Relson
  2009-08-02 15:36 ` [gentoo-user] " Nikos Chantziaras
@ 2009-08-02 16:23 ` Neil Bothwick
  2009-08-02 17:37   ` David Relson
  1 sibling, 1 reply; 14+ messages in thread
From: Neil Bothwick @ 2009-08-02 16:23 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 582 bytes --]

On Sun, 2 Aug 2009 09:20:37 -0400, David Relson wrote:

> I've had trouble building dev-util/duma and discovered this morning that
> -j2 was the culprit.  duma's build compiles and runs createconf.c in
> order to create duma_config.h which is needed by dumapp.cpp.  With -j2,
> the cpp compilation is starting before createconf finishes running and
> this causes the emerge to die.
> 
> How does one set a special MAKEOPTS for a particular package?

echo 'MAKEOPTS="-j1"' >/etc/portage/env/dev-util/duma

-- 
Neil Bothwick

Contentsoftaglinemaysettleduringshipping.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user] make.conf  MAKEOPTS=-j2
  2009-08-02 16:23 ` [gentoo-user] " Neil Bothwick
@ 2009-08-02 17:37   ` David Relson
  2009-08-02 18:10     ` [gentoo-user] " Nikos Chantziaras
  0 siblings, 1 reply; 14+ messages in thread
From: David Relson @ 2009-08-02 17:37 UTC (permalink / raw
  To: gentoo-user

On Sun, 2 Aug 2009 17:23:40 +0100
Neil Bothwick wrote:

> On Sun, 2 Aug 2009 09:20:37 -0400, David Relson wrote:
> 
> > I've had trouble building dev-util/duma and discovered this morning
> > that -j2 was the culprit.  duma's build compiles and runs
> > createconf.c in order to create duma_config.h which is needed by
> > dumapp.cpp.  With -j2, the cpp compilation is starting before
> > createconf finishes running and this causes the emerge to die.
> > 
> > How does one set a special MAKEOPTS for a particular package?
> 
> echo 'MAKEOPTS="-j1"' >/etc/portage/env/dev-util/duma

Exactly what I was looking for!

Thanks Neil.

Regards,

David



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-02 17:37   ` David Relson
@ 2009-08-02 18:10     ` Nikos Chantziaras
  2009-08-02 18:30       ` Dale
                         ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Nikos Chantziaras @ 2009-08-02 18:10 UTC (permalink / raw
  To: gentoo-user

On 08/02/2009 08:37 PM, David Relson wrote:
> On Sun, 2 Aug 2009 17:23:40 +0100
> Neil Bothwick wrote:
>
>> On Sun, 2 Aug 2009 09:20:37 -0400, David Relson wrote:
>>
>>> I've had trouble building dev-util/duma and discovered this morning
>>> that -j2 was the culprit.  duma's build compiles and runs
>>> createconf.c in order to create duma_config.h which is needed by
>>> dumapp.cpp.  With -j2, the cpp compilation is starting before
>>> createconf finishes running and this causes the emerge to die.
>>>
>>> How does one set a special MAKEOPTS for a particular package?
>>
>> echo 'MAKEOPTS="-j1"'>/etc/portage/env/dev-util/duma
>
> Exactly what I was looking for!

Note that by doing so you will be using -j1 for every future version of 
duma.  That means, if the problem gets fixed, you'll still be using -j1.




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-02 18:10     ` [gentoo-user] " Nikos Chantziaras
@ 2009-08-02 18:30       ` Dale
  2009-08-02 19:41       ` Neil Bothwick
  2009-08-03 12:11       ` Walter Dnes
  2 siblings, 0 replies; 14+ messages in thread
From: Dale @ 2009-08-02 18:30 UTC (permalink / raw
  To: gentoo-user

Nikos Chantziaras wrote:
> On 08/02/2009 08:37 PM, David Relson wrote:
>> On Sun, 2 Aug 2009 17:23:40 +0100
>> Neil Bothwick wrote:
>>
>>> On Sun, 2 Aug 2009 09:20:37 -0400, David Relson wrote:
>>>
>>>> I've had trouble building dev-util/duma and discovered this morning
>>>> that -j2 was the culprit.  duma's build compiles and runs
>>>> createconf.c in order to create duma_config.h which is needed by
>>>> dumapp.cpp.  With -j2, the cpp compilation is starting before
>>>> createconf finishes running and this causes the emerge to die.
>>>>
>>>> How does one set a special MAKEOPTS for a particular package?
>>>
>>> echo 'MAKEOPTS="-j1"'>/etc/portage/env/dev-util/duma
>>
>> Exactly what I was looking for!
>
> Note that by doing so you will be using -j1 for every future version
> of duma.  That means, if the problem gets fixed, you'll still be using
> -j1.
>
>
>

If it were me and I didn't upgrade this very often, I would just put it
on the command line for this one time.  This would make it compile this
time without error and if this gets fixed in the future, it will use the
setting in make.conf like the other packages.

I'm not going to tell how many times I have put some exception to the
norm, forget about it and then later on wonder why portage is doing
something weird.  :/  Of course, it would just being doing what I told
it to do.

Dale

:-)  :-) 



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-02 18:10     ` [gentoo-user] " Nikos Chantziaras
  2009-08-02 18:30       ` Dale
@ 2009-08-02 19:41       ` Neil Bothwick
  2009-08-03 12:11       ` Walter Dnes
  2 siblings, 0 replies; 14+ messages in thread
From: Neil Bothwick @ 2009-08-02 19:41 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 520 bytes --]

On Sun, 02 Aug 2009 21:10:49 +0300, Nikos Chantziaras wrote:

> >> echo 'MAKEOPTS="-j1"'>/etc/portage/env/dev-util/duma  
> >
> > Exactly what I was looking for!  
> 
> Note that by doing so you will be using -j1 for every future version of 
> duma.  That means, if the problem gets fixed, you'll still be using -j1.

It's sourced as a bash script, so you can include conditionals and tests

[[ "$PVR" == "1.2-r3" ]] && MAKEOPTS="-j1"


-- 
Neil Bothwick

OPERATOR ERROR: Nyah, Nyah, Nyah, Nyah, Nyah!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-02 18:10     ` [gentoo-user] " Nikos Chantziaras
  2009-08-02 18:30       ` Dale
  2009-08-02 19:41       ` Neil Bothwick
@ 2009-08-03 12:11       ` Walter Dnes
  2009-08-03 14:16         ` Nikos Chantziaras
  2 siblings, 1 reply; 14+ messages in thread
From: Walter Dnes @ 2009-08-03 12:11 UTC (permalink / raw
  To: gentoo-user

On Sun, Aug 02, 2009 at 09:10:49PM +0300, Nikos Chantziaras wrote

> Note that by doing so you will be using -j1 for every future version
> of duma.  That means, if the problem gets fixed, you'll still be
> using -j1.

  Actually, I put -j1 into my make.conf after being bitten by -j2 a few
times.  It doesn't slow down the emerge that much, and doesn't slow down
the compiled program at all.  And the big thing is that it has probably
saved me from wasting time trying to track down weird emerge failures.

-- 
Walter Dnes <waltdnes@waltdnes.org>



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 12:11       ` Walter Dnes
@ 2009-08-03 14:16         ` Nikos Chantziaras
  2009-08-03 14:23           ` Nevynxxx
                             ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Nikos Chantziaras @ 2009-08-03 14:16 UTC (permalink / raw
  To: gentoo-user

On 08/03/2009 03:11 PM, Walter Dnes wrote:
> On Sun, Aug 02, 2009 at 09:10:49PM +0300, Nikos Chantziaras wrote
>
>> Note that by doing so you will be using -j1 for every future version
>> of duma.  That means, if the problem gets fixed, you'll still be
>> using -j1.
>
>    Actually, I put -j1 into my make.conf after being bitten by -j2 a few
> times.  It doesn't slow down the emerge that much, and doesn't slow down
> the compiled program at all.  And the big thing is that it has probably
> saved me from wasting time trying to track down weird emerge failures.

Well, that's you.  -j2 needs only 1/2 of the time to emerge things on 
this machine, and -j4 only 1/4 on a 4 core machine.

So my advice for others is to not take Walter's advice and use -j1 
because "it doesn't slow down the emerge that much".  It can slow it 
down. Up to four times slower.




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 14:16         ` Nikos Chantziaras
@ 2009-08-03 14:23           ` Nevynxxx
  2009-08-03 14:56           ` Dale
  2009-08-03 21:45           ` Neil Bothwick
  2 siblings, 0 replies; 14+ messages in thread
From: Nevynxxx @ 2009-08-03 14:23 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 1319 bytes --]

Nikos Chantziaras wrote:
> On 08/03/2009 03:11 PM, Walter Dnes wrote:
>>
>>    Actually, I put -j1 into my make.conf after being bitten by -j2 a few
>> times.  It doesn't slow down the emerge that much, and doesn't slow down
>> the compiled program at all.  And the big thing is that it has probably
>> saved me from wasting time trying to track down weird emerge failures.
>
> Well, that's you.  -j2 needs only 1/2 of the time to emerge things on
> this machine, and -j4 only 1/4 on a 4 core machine.
>
> So my advice for others is to not take Walter's advice and use -j1
> because "it doesn't slow down the emerge that much".  It can slow it
> down. Up to four times slower.
>
>
It'll actually be somewhere inbetween the two of you. None of the steps
in an emerge *except* the compilation stage will be affected by the -J
option. That compile stage though will be affected as you said. For some
packages, that will mean that the J option has almost no effect (becuase
they have multiple ./configure runs that take far longer than the
compile part anyway, or because they are so small the install stage
takes longer or whatever).

For most packages it will show an improvement, but almost never x2 or x4....

For me, a kernel "make" with the -j=2 option is a lot quicker than
without....


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 261 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 14:16         ` Nikos Chantziaras
  2009-08-03 14:23           ` Nevynxxx
@ 2009-08-03 14:56           ` Dale
  2009-08-03 19:40             ` Stroller
  2009-08-03 21:45           ` Neil Bothwick
  2 siblings, 1 reply; 14+ messages in thread
From: Dale @ 2009-08-03 14:56 UTC (permalink / raw
  To: gentoo-user

Nikos Chantziaras wrote:
> On 08/03/2009 03:11 PM, Walter Dnes wrote:
>> On Sun, Aug 02, 2009 at 09:10:49PM +0300, Nikos Chantziaras wrote
>>
>>> Note that by doing so you will be using -j1 for every future version
>>> of duma.  That means, if the problem gets fixed, you'll still be
>>> using -j1.
>>
>>    Actually, I put -j1 into my make.conf after being bitten by -j2 a few
>> times.  It doesn't slow down the emerge that much, and doesn't slow down
>> the compiled program at all.  And the big thing is that it has probably
>> saved me from wasting time trying to track down weird emerge failures.
>
> Well, that's you.  -j2 needs only 1/2 of the time to emerge things on
> this machine, and -j4 only 1/4 on a 4 core machine.
>
> So my advice for others is to not take Walter's advice and use -j1
> because "it doesn't slow down the emerge that much".  It can slow it
> down. Up to four times slower.
>
>
>

But if he has a single CPU system, it won't matter that much.  I have
always heard that it should be set to number of CPU's plus 1.  Mine is
set to 2 since I have a single CPU rig.

This is one of those situations where it depends on the system you have. 

Dale

:-)  :-) 



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 14:56           ` Dale
@ 2009-08-03 19:40             ` Stroller
  2009-08-03 19:48               ` Dale
  0 siblings, 1 reply; 14+ messages in thread
From: Stroller @ 2009-08-03 19:40 UTC (permalink / raw
  To: gentoo-user


On 3 Aug 2009, at 15:56, Dale wrote:
> But if he has a single CPU system, it won't matter that much.  I have
> always heard that it should be set to number of CPU's plus 1.  Mine is
> set to 2 since I have a single CPU rig.

It should be set to at least the number of *cores*, not CPUs.

Back in ye olde days one used to talk about MAKEOPTS in terms of the  
number of CPUs, but that's when CPUs each had only one core. Now mutli- 
core CPUs are common.

You probably intended this, but I thought I should point it out, lest  
any newcomers get confused.

Stroller.




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 19:40             ` Stroller
@ 2009-08-03 19:48               ` Dale
  0 siblings, 0 replies; 14+ messages in thread
From: Dale @ 2009-08-03 19:48 UTC (permalink / raw
  To: gentoo-user

Stroller wrote:
>
> On 3 Aug 2009, at 15:56, Dale wrote:
>> But if he has a single CPU system, it won't matter that much.  I have
>> always heard that it should be set to number of CPU's plus 1.  Mine is
>> set to 2 since I have a single CPU rig.
>
> It should be set to at least the number of *cores*, not CPUs.
>
> Back in ye olde days one used to talk about MAKEOPTS in terms of the
> number of CPUs, but that's when CPUs each had only one core. Now
> mutli-core CPUs are common.
>
> You probably intended this, but I thought I should point it out, lest
> any newcomers get confused.
>
> Stroller.
>
>
>

You are right.  I did mean "cores" not CPU's.  Thanks for pointing that out.

I do wish Google would send me copies of my emails.  That's when I
usually catch my boo boos.  :/

Dale

:-)  :-) 



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [gentoo-user]  Re: make.conf  MAKEOPTS=-j2
  2009-08-03 14:16         ` Nikos Chantziaras
  2009-08-03 14:23           ` Nevynxxx
  2009-08-03 14:56           ` Dale
@ 2009-08-03 21:45           ` Neil Bothwick
  2 siblings, 0 replies; 14+ messages in thread
From: Neil Bothwick @ 2009-08-03 21:45 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 641 bytes --]

On Mon, 03 Aug 2009 17:16:18 +0300, Nikos Chantziaras wrote:

> So my advice for others is to not take Walter's advice and use -j1 
> because "it doesn't slow down the emerge that much".  It can slow it 
> down. Up to four times slower.

Personaly, I've never had an ebuild fail due to setting MAKEOPTS=-j>1 but
if you want to set -j1 in make.conf, you can regain a significant part of
the time loss, by running emerge with --jobs=2 (or more) to run multiple
compiles in parallel while keeping each package's compilation
single-threaded. 


-- 
Neil Bothwick

Did you know that eskimos have 17 different words for linguist?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2009-08-03 21:46 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-02 13:20 [gentoo-user] make.conf MAKEOPTS=-j2 David Relson
2009-08-02 15:36 ` [gentoo-user] " Nikos Chantziaras
2009-08-02 16:23 ` [gentoo-user] " Neil Bothwick
2009-08-02 17:37   ` David Relson
2009-08-02 18:10     ` [gentoo-user] " Nikos Chantziaras
2009-08-02 18:30       ` Dale
2009-08-02 19:41       ` Neil Bothwick
2009-08-03 12:11       ` Walter Dnes
2009-08-03 14:16         ` Nikos Chantziaras
2009-08-03 14:23           ` Nevynxxx
2009-08-03 14:56           ` Dale
2009-08-03 19:40             ` Stroller
2009-08-03 19:48               ` Dale
2009-08-03 21:45           ` Neil Bothwick

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox