On 06/17/2010 05:23 PM, Walter Dnes wrote:
> On Thu, Jun 17, 2010 at 08:02:25AM -0700, Bill Longman wrote
>> On 06/16/2010 05:33 PM, walt wrote:
>>> On 06/16/2010 02:29 PM, Thomas Revell wrote:
>>>> Hi everyone,
>>>>
>>>> I've got a bit of a problem with a new Gentoo install that I'm currently
>>>> trying to install KDE on. The installation of kdebase/kfilereplace-4.3.5
>>>> is failing, apparently due to a missing header file in its sources.
>>>
>>>   <snip>
>>>> [ 11%] Generating koptionsdlgs.h
>>>   <snip>
>>>> moc:
>>>> /var/tmp/portage/kde-base/kfilereplace-4.3.5/work/kfilereplace-4.3.5_build/kfilereplace/koptionsdlgs.h:
>>>>
>>>> No such file
>>>
>>> I have no idea what's going wrong, but I'm willing to make suggestions
>>> anyway :)
>>
>> I have no better suggestion than to change your ricer CFLAGS and see if
>> "-O2 -pipe -march=core2" works first. Especially since you have:
>>
>>  "-mno-align-stringops -minline-stringops-dynamically"
>>
>> and kfilereplace.cpp:37 warns about QStringList& and further along, it
>> creates kaddstringdlgs.h.
>>
>> BTW, -march=core2 implies -mmmx -msse -msse2 and -msse3 (and -mssse3).
> 
>   Even better is "-march=native", and let the compiler figure out what
> features are available/safe.  I use the following...
> 
> CFLAGS="-O2 -march=native -mfpmath=sse -fomit-frame-pointer -pipe"
> 
> If you're building 64-bit Gentoo, the "-mfpmath=sse" gets picked up by
> "-march=native" and you can drop the explicit mention.
> 
>   And you wouldn't believe how many weird build problems are solved by...
> 
> MAKEOPTS="-j1"
> 
> ...even on multi-core cpus.  The *BUILD PROCESS* is a bit slower, but
> the final binary is identical with -j8 or whatever.  And the time you
> "save" by a faster build in a tty will be lost the first time you start
> bashing your head into a brick wall over some weird build problem.
> 

Exactly. And the same with distcc. If you do not use --keep-going,
you'll likely see that long compile end abruptly. My typical modus
operandii is to use distcc, then compile locally, then just use -j1
locally. You get there but you have to be willing to babysit it.

For example, I just upgraded two of my VMs to gcc 4.4 so I will
recompile "-qe world" on them. Since it's the weekend, I'll just turn
off distcc and let them run -j1. When I come back on Monday, I expect to
see a sparkling clean and shiny new Gentoo VM. Well, I can at least
hope! I'll probably run out of inodes or something....

Reply via email to