2010年11月12日

[gentoojp-users:02177] Re: CFLAGS が設定されません

たなべです。

2010/11/12 早間義博 <yossi@xxxxx>:
> たなべさん、おはようございます、早間です。
>>
>> 成功するホストと失敗するホストのそれぞれのemerge --infoみると違いがわかるかもしれません。
>>
>

> 比較してみたところ、
> 13c13
> < sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.1
> ---
>> sys-devel/automake: 1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1
> 23c23
> < CFLAGS="-O2 -mtune=i686 -pipe"
> ---
>> CFLAGS=""
> 25c25
> < CONFIG_PROTECT=" 省略 "
> ---
>> CONFIG_PROTECT=" 省略 "
> 27c27
> < CXXFLAGS="-O2 -mtune=i686 -pipe"
> ---
>> CXXFLAGS="-I/usr/include/glib-2.0"
> 30a31
>> LANG="C"
> 41,42c42,43
> < USE=" 省略 "
> ---
>> USE=" 省略 "

(snip)

> と成功するホストは CFLAGS が設定されていて、失敗するホストには
> CFLAGS が設定されていませんでした。
> どちらも /etc/make.conf で
> CFLAGS="-O2 -mtune=i686 -pipe"
> と指定しています。試しに成功するホストの /etc/make.conf にある
> CFLAGS="-O2 -mtune=i686 -pipe"
> をコメントにしてみましたが emerge --info の結果には変化ありません
> でした。 /etc/make.conf にあるこの設定は無意味と言うことですか。

このあたりが問題だと思います。CFLAGSなどの値は様々な経路を経て設定されます。
emerge --infoはその最終的な結果なのでmake.confを変えても反映されていない場合profileが
おかしくなっているのではないかと思います。

例えば、x86のデフォルト値は /usr/portage/profiles/arch/x86/make.defaultsで設定されています。
なのでmake.confでCFLAGSを設定していない場合は上記ファイルの設定値が利用されるはずです。
もしそうでないならmake.confに至るまで(もしくはmake.conf中)のどこかで値が上書きされています。

> eselect profile list ではいずれも
> [1] default/linux/x86/10.0 *
> を指定しています。
> 両ホストの portage は第三のホストにある情報を nfs で共用しています。
> 故に、同じ profile を使用していますし、porage tree の差異はありま
> せん。

であれば、なおのこと各マシン固有の設定のどこかでCFLAGSが上書きされているのではないでしょうか。

--
TANABE Ken-ichi / nabeken
Mailto: nabeken@xxxxx / gmail.com / gentoo.gr.jp


投稿者 xml-rpc : 2010年11月12日 12:29
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/99966
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。