XFree86-4.2.0
作成 : 2003/01/05
最終的に XFree86-4.2.0 のインストールに必要になったパッケージ
bison-1.875
m4-1.4(bison のインストールに必要)
flex-2.5.4a
perl-5.8.0
ncurses-5.3
XFree86 の入手と展開
XFree86 には、ソースとバイナリのいずれかからインストールできる。 とりあえず、ソースからインストールしてみる。
XFree86-4.2.0 のソースを、xfree86.org からもらってくる。 X420src-1.tgz、X420src-2.tgz、X420src-3.tgz の3 個。 /usr/local/src とかに置いて、展開。 すべて xc ディレクトリの中に展開される。
# gunzip -cd X420src-1.tgz | tar xvf - # gunzip -cd X420src-2.tgz | tar xvf - # gunzip -cd X420src-3.tgz | tar xvf -
make World
xc/config/cf ディレクトリの site.cf を編集しろとか、適当なファイルを host.cf にコピーしろとか書いてあるけど、そのまま make World。 (world でなく World なので注意!) cc がないエラーになったので、CC=gcc をつけて実行。
# cd xc # CC=gcc make World .... bison -y -d pswparser.y /bin/sh: bison: command not found make[4]: *** [pswparser.c] Error 127 make[4]: Leaving directory `/usr/local/src/xfree86/xc/config/pswrap' make[3]: *** [../../config/pswrap/pswrap] Error 2 make[3]: Leaving directory `/usr/local/src/xfree86/xc/lib/dps' make[2]: *** [includes] Error 2 make[2]: Leaving directory `/usr/local/src/xfree86/xc/lib' make[1]: *** [includes] Error 2 make[1]: Leaving directory `/usr/local/src/xfree86/xc' make: *** [World] Error 2
bison がないと怒られるので、インストール。 (bison-1.875 を見てね) そして、make World。
# make World
....
flex -l -t lexer.l > lexer.c
/bin/sh: flex: command not found
make[4]: *** [lexer.c] Error 127
make[4]: Leaving directory `/usr/local/src/xfree86/xc/config/pswrap'
make[3]: *** [../../config/pswrap/pswrap] Error 2
make[3]: Leaving directory `/usr/local/src/xfree86/xc/lib/dps'
make[2]: *** [includes] Error 2
make[2]: Leaving directory `/usr/local/src/xfree86/xc/lib'
make[1]: *** [includes] Error 2
make[1]: Leaving directory `/usr/local/src/xfree86/xc'
make: *** [World] Error 2
flex がないと怒られるので、インストール。 (flex-2.5.4a を見てね) そして、make World。
# make World
....
perl modeline2c.pl < modedefs > xf86DefModeSet.c
/bin/sh: perl: command not found
make[5]: *** [xf86DefModeSet.c] Error 127
make[5]: Leaving directory `/usr/local/src/xfree86/xc/programs/Xserver/hw/xfree86/common'
make[4]: *** [includes] Error 2
make[4]: Leaving directory `/usr/local/src/xfree86/xc/programs/Xserver/hw/xfree86'
make[3]: *** [includes] Error 2
make[3]: Leaving directory `/usr/local/src/xfree86/xc/programs/Xserver'
make[2]: *** [includes] Error 2
make[2]: Leaving directory `/usr/local/src/xfree86/xc/programs'
make[1]: *** [includes] Error 2
make[1]: Leaving directory `/usr/local/src/xfree86/xc'
make: *** [World] Error 2
perl がないと怒られるので、インストール。 (perl-5.8.0 を見てね) そして、make World。
# make World
....
bison -y xkbparse.y
xkbparse.y:452.17: syntax error, unexpected "|"
xkbparse.y:515.17: syntax error, unexpected "|"
make[3]: *** [xkbparse.c] Error 1
make[3]: Leaving directory `/usr/local/src/xfree86/xc/programs/xkbcomp'
make[2]: *** [depend] Error 2
make[2]: Leaving directory `/usr/local/src/xfree86/xc/programs'
make[1]: *** [depend] Error 2
make[1]: Leaving directory `/usr/local/src/xfree86/xc'
make: *** [World] Error 2
こんどは謎のエラー。 いろいろ検索してみると、bison-1.50 と XFree86-4.2.0 で同じエラーになるらしい。 ソースを修正しないとだめらしい。
xc/lib/Xft/xftgram.y
166: matrix.__REALLY_YY__ = $5;
167: }
; <---追加
168: number : INTEGER
169: { $$ = (double) $1; }
xc/programs/twm/gram.y
459: } 460: } 461: win_color_list <---削除 win_color_list {/* No action. */;} <---追加 462: | CKEYWORD string { if (!do_color_keyword ($1, color, 463: $2)) { 655: $$ = ptr; 656: } ; <---追加 657: number : NUMBER { $$ = $1; } 658: ;
xc/programs/xkbcomp/xkbparse.y
449: ShapeDecl : SHAPE String OBRACE OutlineList CBRACE SEMI
450: { $$= ShapeDeclCreate($2,(OutlineDef *)&$4->common); }
451: ; <---削除
452: | SHAPE String OBRACE CoordList CBRACE SEMI
453: {
512: $$= (OverlayKeyDef *)
513: AppendStmt(&$1->common,&$3->common);
514: }; <---削除
} <---追加
515: | OverlayKey
516: { $$= $1; }
xc/programs/xkbevd/cfgparse.y
174: | SOUND { $$ = SoundAction; }
175: | { $$ = UnknownAction; }
; <---追加
176: OptNameSpec : NameSpec { $$= $1; }
177: | { $$= NULL; }
ソースを編集したら、make World。
# make World
....
やっとエラーなく終了。
make install
make install。
# make install
....
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make[3]: *** [xterm] Error 1
make[3]: Leaving directory `/usr/local/src/xfree86/xc/programs/xterm'
make[2]: *** [install] Error 2
make[2]: Leaving directory `/usr/local/src/xfree86/xc/programs'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/usr/local/src/xfree86/xc'
make: *** [install] Error 2
make install の途中でエラーになってしまった。 いろいろ検索してみると、ncurses ライブラリがないと、このエラーになるらしいので、ncurses をインストール。 (ncurses-5.3 を見てね) そして、make install。
# make install
今度は成功。 make install のログをおいておく。
X の設定については、X の設定を参照のこと。