From: Tsurutani Naoki <[EMAIL PROTECTED]>
Subject: [FreeBSD-users-jp 90377] Re: ethereal の後継 wireshark
Date: Thu, 15 Feb 2007 01:19:54 +0900

> 中途半端にCFLAGSを指定するとどうでしょう?

* 前回installされた、adns,net-snmp,wiresharkをpkg_deinstall
* /usr/ports/net/wiresharkでmake rmconfigして、保存されていたOPTIONSの
  設定を削除
* /etc/make.confに CFLAGS="-O" を追加
* portinstall net/wiresharkを実行
* オプション選択はデフォルトのまま

としてみましたが、やはり特に問題なくインストールが完了しました。

だだし、昨日net/wiresharkとnet-mgmt/net-snmpが更新されていたので、その
辺りの影響でコンパイルが通るようになったのかもしれませんが。

> /etc/make.confで指定しなければ、"-O2 -fno-strict-aliasing -pipe"が
> 指定されるようですが...
> # -O2が保証されていることに驚いたことがあります。
> 何も指定していなければ問題ないのですが、昔からの習慣で"-O"のみを
> 指定していたりすると、私のような目に合うらしいです。
> たしか、"-O2"を指定→何かのビルドに失敗→"-O2"は保証外と言われた→
> では"-O"に...という経緯の結果のままでした。

「"-O2"は保証外」という言葉の文脈が判らないので何とも言えませんが、こ
とportsに関していうのならば、最低限保証している(or保証しようとしている)
のは、/etc/make.confでコンパイラオプションを何も指定していない状態、も
う少し細かく言うのなら

(1) /etc/make.confでコンパイラやリンカのオプションを何も指定していない
(2) OSのbase systemが(1)の状態で作成されたものであり、かつそのportが依
    存する全てのportsが(1)の状態でmake installされている

という状況のみであり、それ以外は-Oだろうが-O2だろうが全て保証外だと私
は思います。

でもって、ソースが公開されているので、CFLAGSに-O3を指定してmake world
することも、特定のportsを-msse3付きでmakeしてinstallすることも、やれば
出来てしまうのかもしれませんが、そういうのは全て保証外であり、それで
makeが失敗したりなにか不具合があったとしても、それはやった人が(諦める
なり、なんとか頑張るなり)自分で何とかしてね、ということだと。

---
木村 康浩 

メールによる返信