疑問メモ: ビルドするGCCのバージョン
X 6.3では、使用するgccのバージョンに合わせて設定ファイルを編集してから、ビルドを実行します。
具体的には、gccバージョン1を使うなら、site.defファイルのHasGccSetをYESに、gccバージョン2を使うならHasGcc2をYESにします。
えっ。1? 2? なにそれこわい。
X 6.3のビルドマニュアルが書かれたのが1996年3月。当時の最新gccは2.7.2です。選択肢に1と2しかないのは当然です。
一方、自分のビルド環境は最近のFedoraなので、もちろんgcc4系です。このような場合、gcc4で正しくビルドできるものなのでしょうか。
もしや、当時のgccと依存ライブラリをそっくり持ってこないとダメ?
冷静に考えよう。gccのバージョン情報のみならず、OSのメジャーバージョンとマイナーバージョンに依存する設定ファイルまで必要なX Window Systemが、そこらへんのテキトーなバージョンのgccであっさりビルドできると考える方が間違っているのではないか。…
よくわからないので、もうちょっと勉強します。
(そもそも2011年になんで15年前のXをビルドしようとしてるの?ばかなの?って話は、さておき)
追記
X will not compile on some systems with gcc version 2.5, 2.5.1, or 2.5.2 because of an incorrect declaration of mem-move() in a gcc include file.
If you are using a gcc version older than 2.7 on Solaris x86,(後略)