Xorg-7 の概要

Xorg は、再配布が可能な X ウィンドウシステムのオープンソース実装です。 このシステムは、ディスプレイハードウェア (マウス、キーボード、ビデオディスプレイ) とデスクトップ環境に対し、クライアント/サーバーのインターフェースを提供します。 またウィンドウインフラストラクチャーと標準アプリケーションインターフェース (API; application interface) を提供します。

Xorg のダウンロードとインストール

Xorg-7.0 では、完全に自動ツール化されたモジュールのビルドシステムが構築されていましたが、そのビルドシステムが新しいものとなったため、パッケージ全体を1つのファイルとしてダウンロードすることは出来なくなりました。 実際にダウンロードサイトから入手すべきファイルは 100 個を超えます。 必要となる大量のファイルのダウンロードを容易に行うために、Wget-1.21.4 のインストールを是非行ってください。 wget にて用いる正確なファイルリストについては、各節において明示します。 そのファイルリストには数多くのパッケージが含まれます。

あまりに多くのパッケージが提供されているため、初めのうちは、自分がどのパッケージを入手してインストールすべきなのかを決めるのが大変かもしれません。 そんな時は このページ このスレッド を参考にしてください。 どうにも分からない時は全パッケージをインストールすることになるかもしれませんが、その場合は余計なディスク容量を消費することになります。

[注記]

注記

必要なパッケージのみをダウンロードしようとする場合であっても、wget ファイルはダウンロードしてください。 このファイルではパッケージの依存関係を考慮してパッケージが並べられています。 また互いにうまく動作するようなパッケージバージョンが列記されています。 さらに言うと wget ファイル内では、特定のパッケージが不適当であるとかインストールすべきではない、といったコメントも書かれています。 より最新のパッケージバージョンは Xorg の次期リリースバージョンにおいて用いるべきかもしれませんし、BLFS にてインストールする他のソフトウェアの現行バージョンでは動作しないことが明らかな場合もあります。 Xorg のインストールによって消費されるディスク容量は、本当に必要とするパッケージのみをインストールすることで、大幅に削減できるかもしれません。 しかし BLFS ブックでは、個々の Xorg パッケージにおける、すべての依存パッケージやビルドオプションについては、説明が網羅されていません。 説明手順はあくまで、すべてのパッケージをビルドすることを前提としています。

Additionally, because of the large number of repetitive commands, you are encouraged to partially automate the build. Instructions have been given that utilize the Sudo-1.9.15p4 package. It is recommended that you use the :NOPASSWD configuration option for the user that will be building the xorg packages.

Xorg ビルド環境の設定

[注記]

注記

The following instructions assume that the shell startup files have been set up as described in Bash シェルの初期起動ファイル.

As with previous releases of the X Window System, it may be desirable to install Xorg into an alternate prefix. This is no longer common practice among Linux distributions. The common installation prefix for Xorg on Linux is /usr. There is no standard alternate prefix, nor is there any exception in the current revision of the Filesystem Hierarchy Standard for Release 7 of the X Window System. Alan Coopersmith of Sun Microsystems, once stated "At Sun, we were using /usr/X11 and plan to stick with it." Only the /opt/* prefix or the /usr prefix adhere to the current FHS guidelines.

The BLFS editors recommend using the /usr prefix.

インストールプレフィックスを定めたら、以下のコマンドにより環境変数 XORG_PREFIX にセットします。

export XORG_PREFIX="<PREFIX>"

インストール手順を通じては、すべてのパッケージに対して configure へのパラメーター指定に以下を用います。 環境変数 XORG_CONFIG にそのパラメーター指定を定義します。

export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \
    --localstatedir=/var --disable-static"

root ユーザーになって、各種の変数設定を含めた /etc/profile.d/xorg.sh を生成します。

cat > /etc/profile.d/xorg.sh << EOF
XORG_PREFIX="$XORG_PREFIX"
XORG_CONFIG="--prefix=\$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var --disable-static"
export XORG_PREFIX XORG_CONFIG
EOF
chmod 644 /etc/profile.d/xorg.sh
[注記]

注記

There is some confusion about the above 'here' document. The backslash in front of the dollar sign is correct. Bash will remove it when creating /etc/profile.d/xorg.sh. However, if you are creating the file with an editor, a copy and paste operation will not remove the backslash. It must then be removed manually.

If you've installed Sudo-1.9.15p4, ensure that XORG_PREFIX and XORG_CONFIG are available in the sudo environment. As the root user, run the following command:

cat > /etc/sudoers.d/xorg << EOF
Defaults env_keep += XORG_PREFIX
Defaults env_keep += XORG_CONFIG
EOF

If you are not using the standard Xorg prefix...

[警告]

警告

If you've decided to use the standard /usr prefix, you must omit the remainder of this page and continue at util-macros-1.20.0.

If you've decided to not use the standard prefix, be sure to add $XORG_PREFIX/bin to your PATH environment variable, and $XORG_PREFIX/lib/pkgconfig and $XORG_PREFIX/share/pkgconfig to your PKG_CONFIG_PATH variable. It is also helpful to specify additional search paths for gcc and an include directory for the aclocal program. Issue the following commands as the root user:

cat >> /etc/profile.d/xorg.sh << "EOF"

pathappend $XORG_PREFIX/bin             PATH
pathappend $XORG_PREFIX/lib/pkgconfig   PKG_CONFIG_PATH
pathappend $XORG_PREFIX/share/pkgconfig PKG_CONFIG_PATH

pathappend $XORG_PREFIX/lib             LIBRARY_PATH
pathappend $XORG_PREFIX/include         C_INCLUDE_PATH
pathappend $XORG_PREFIX/include         CPLUS_INCLUDE_PATH

ACLOCAL="aclocal -I $XORG_PREFIX/share/aclocal"

export PATH PKG_CONFIG_PATH ACLOCAL LIBRARY_PATH C_INCLUDE_PATH CPLUS_INCLUDE_PATH
EOF

The script above needs to be activated. Normally it will be automatic at login, but to activate it now, as a regular user, run:

source /etc/profile.d/xorg.sh

また /etc/ld.so.conf に対して $XORG_PREFIX/lib を加える必要があります。 root ユーザーになって以下を実行します。

echo "$XORG_PREFIX/lib" >> /etc/ld.so.conf

/etc/man_db.conf においては MANDATORY_MANPATH, MANPATH_MAP, MANDB_MAP の各エントリーを適切に設定することも必要です。 以下は /usr/X11R6 を書き換える例です。 root ユーザーになって以下を実行します。

sed -e "s@X11R6/man@X11R6/share/man@g" \
    -e "s@/usr/X11R6@$XORG_PREFIX@g"   \
    -i /etc/man_db.conf

Some applications look for shared files in /usr/share/X11. Create a symbolic link to the proper location as the root user:

ln -svf $XORG_PREFIX/share/X11 /usr/share/X11

If building KDE, some cmake files look for Xorg in places other than $XORG_PREFIX. Allow cmake to find Xorg with:

ln -svf $XORG_PREFIX /usr/X11R6