GCC6.4のemergeエラー(コンパイルエラー)

GentooにインストールしているHomeAssistant (HASS)をアップデートした時に、GCCも6.4にバージョンアップしたのですが、その時にハマったにもかかわらず、リビルドで同じハマり方をしたので、備忘録。

GCC6.4は、特に原因不明のセグメンテーションフォルトでemergeが進みませんでした。
しかも、再度emergeしなおすと、別な場所でエラー。
どうも、「メモリーが少ないのでは?」というアドバイスが巷にあふれていましたが、メモリー高騰のご時世に、カネをかけずになんとかしたい!

英語のフォーラムで、
「MAKEOPTS="-j○"の○の数字が大きすぎるとメモリーが足りなくてセグメンテーションフォルトが起こるよ。試しに-j1でやってみて。」
って書いてあったので、/etc/portage/make.confの中MAKEOPTSを、MAKEOPTS="-j1"にしてみたらemergeが通りました。

それまではMAKEOPTS="-j7"でしたが、自分のマシンは4コアなので、MAKEOPTS="-j4"でリビルドしましたが、それで、メモリー大食いのmysqlを止めると通りました。

あとはCFLAGSの"-pipe"を消すと、emergeが遅くなるものの、完走しやすいと思います。