On Thu, Oct 07, 2010 at 04:43:55AM +0200, [email protected] wrote
> =================================================================
> System Settings
> =================================================================
> CFLAGS="-march=amdfam10 -O2 -pipe -msse3"
Let the compiler figure out the CPU. Change that line to...
CFLAGS="-march=native -O2 -pipe"
> CXXFLAGS="-march=amdfam10 -O2 -pipe -msse3"
The recommended way of doing things here is...
CXXFLAGS="${CFLAGS}"
...which exactly copies whatever settings you have there.
Synchronization between CFLAGS and CXXFLAGS becomes automatic this way.
> MAKEOPTS="-j 12"
Arrrrrrrrgh Nooooooooo!!! That's probably your problem right there.
The recommendation in the manual is N+1, where N == number of cores. Do
you have 11 or more cores? I find that even that isn't always safe. I
set...
MAKEOPTS="-j 1"
and it solves quite a few problems. Note that the final binary is just
as fast, regardless of that setting. The compile speed is somewhat
faster with a higher number. But you quickly lose any "time savings"
from that, the first time you waste several hours trying to figure out
why something isn't compiling. MAKEOPTS="-j 1" should be mandatory.
--
Walter Dnes <[email protected]>