Xorg 7.2のインストール

前提パッケージのインストール

X.orgのサイトにある、 ModularDevelopersGuideを参考にする。

必須とされるもの(Minimum requirements)

パッケージ記載使用バージョン備考
C compilerCLFS-1.1.0 第10.10節gcc-4.2.4(2009.5.4)
LibcCLFS-1.1.0 第10.7節glibc-2.7(2009.5.3)
C++ compilerCLFS-1.1.0 第10.10節gcc-4.2.4(2009.5.4)
Linux platformCLFS-1.1.0 第7.10節Linux-2.6.24.7(2009.5.1)
shellCLFS-1.1.0 第10.27節bash-3.2(2009.5.4)
pkg-configBLFS-6.3 第11章pkg-config-0.22(2009.5.10)
Git使わない
bisonCLFS-1.1.0 第10.16節bison-2.3(2009.5.4)
flexCLFS-1.1.0 第10.20節flex-2.5.35(2009.5.4)
ncursesCLFS-1.1.0 第10.17節ncurses-5.6(2009.5.4)

推奨とされるもの(Suggested packages)

パッケージ記載使用バージョン備考
expatBLFS-6.3 第8章expat-2.0.1(2009.5.11)
gperfBLFS-6.3 第10章gperf-3.0.3(2009.5.11)
xcbBLFS-6.3 第23章Xのインストールの過程
freetypeBLFS-6.3 第9章freetype-2.3.7(2009.5.11)
fontconfigBLFS-6.3 第9章fontconfig-2.4.2(2009.5.11)
libpngBLFS-6.3 第9章libpng-1.2.29(2009.5.11)
zlibCLFS-1.1.0 第10.24節gzlib-1.2.3(2009.5.4)
MesaBLFS-6.3 第24章Xの章よりもあと
libdrmBLFS-6.3 第8章libdrm-2.3.0(2009.5.11)
xmlto保留
gettextCLFS-1.1.0gettext-0.17(2009.5.4)

開発者向けに追加で要求されるもの(Additional requirements for developers)

パッケージ記載使用バージョン備考
autoconfCLFS-1.1.0 第10.25節autoconf-2.61(2009.5.4)
automakeCLFS-1.1.0 第10.26節automake-1.10.1(2009.5.4)
perlCLFS-1.1.0 第10.22節perl-5.8.8(2009.5.4)
m4CLFS-1.1.0 第10.15節m4-1.4.10(2009.5.4)
libtoolCLFS-1.1.0 第10.19節libtool-1.5.26(2009.5.4)

BLFSで書かれている依存パッケージ

パッケージ記載使用バージョン備考
libxml2BLFS-6.3 第8章libxml2-2.6.31(2009.5.11)
libxsltBLFS-6.3 第8章libxslt-1.1.22(2009.5.11)
libpthread-stubsBLFS-6.3 第8章libpthread-stubs-0.1(2009.5.14)
EdBLFS-6.3 第6章ed-1.2(2009.5.14)
XML::ParserBLFS-6.3 第12章XMP-Parser-2.34(2009.5.14)

BLFSで書かれている推奨パッケージ

パッケージ記載使用バージョン備考
wgetBLFS-6.3 第16章wget-1.9.1(2009.5.14)

Xorg 7.2のインストール

BLFS-6.3 第23章に沿ってインストールする。

ソースのダウンロード

BLFSではダウンロードしてビルド・インストール、ソースの削除まで全自動で行なってしまうが、ダウンロードとビルドを分けてみる。

#/bin/bash -e

section=$1
wgetfile=${section}-7.2.wget

#wget http://anduin.linuxfromscratch.org/files/BLFS/xorg/$wgetfile

mkdir $section
(
 cd $section
 grep -v '^#' ../$wgetfile |  wget -i- -c -B http://xorg.freedesktop.org/release
s/individual/$section/
)
for sec in app font proto driver lib util;do bash get.sh $sec; done

ソースパッケージの整理

X11R7.1から更新のないファイルをハードリンクにしてまとめる。

#!/bin/bash

sec=$1

for file in $sec/*; do
    if [ -f /pub/X11R7.1/$file ]; then
        ln -vf /pub/X11R7.1/$file $file
    else
        echo keep $file
    fi
done
cd /pub/X11R7.2
for sec in app font proto driver lib util;do bash ../dup.sh $sec; done

45MBほどの節約。おまけで、リンク数を見ればどれがバージョンアップしてるかわかる。

インストール

ダウンロードの項で書いたように、ダウンロードと分けたビルド用のシェルスクリプトを用意する。
#/bin/bash -e

section=$1

export XORG_PREFIX="/usr"
export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc --mandir=$XORG_PREFI
X/share/man --localstatedir=/var --with-xorg-module-dir=$XORG_PREFIX/lib/X11/mod
ules"

for package in $(grep -v '^#' /pub/X11R7.2/${section}-7.2.wget)
do
  packagedir=$(echo $package | sed 's/.tar.bz2//')
  (
      echo $packagedir
        tar -xf /pub/X11R7.2/$section/$package
      cd $packagedir
      ./configure $XORG_CONFIG
      make -j 2
      sudo make install
#      make install
  )
done 2>&1 | tee ../xorg-${section}-compile.log

*.wgetを使った一括ビルドの手順は以下のような感じになる。

mkdir proto
cd proto
bash ../build.sh proto

Xorg Librariesについて、バッチ処理で一通りビルドしてから、libX11とlibXfontにパッチを当てて手動でビルドする。

起動へ

xterm

xtermをインストール。手順はBLFS-6.3.0 第10章。

(2009.5.19)

設定ファイルの作成

Xorg -configure
cp xorg.conf.new /etc/X11/

とりあえずvesaドライバで起動に成功。
色が16bppなのと画面が1400x1050なのだが、ATIのドライバを入れるまで我慢する。

キーボードとマウスの設定を調整する。

root@sirius# diff -U0 root/xorg.conf.new etc/X11/xorg.conf 
--- root/xorg.conf.new  2009-05-15 21:24:45.000000000 +0900
+++ etc/X11/xorg.conf   2009-05-16 15:09:58.000000000 +0900
@@ -30,0 +31,3 @@
+        Option      "XkbLayout" "jp"
+        Option      "XkbModel" "jp106"
+        Option      "XkbOptions" "ctrl:nocaps"
@@ -38 +41,2 @@
-       Option      "ZAxisMapping" "4 5 6 7"
+       Option      "ZAxisMapping" "4 5"
+        Option      "Buttons" "5"