Xorg ライブラリ

Xorg ライブラリ の概要

Xorg ライブラリは、X ウィンドウアプリケーションのすべてが利用するライブラリルーチンを提供します。

本パッケージは LFS-8.3 において正しくビルドでき動作することが確認されています。

パッケージ情報

Xorg ライブラリ の依存パッケージ

必須

Fontconfig-2.13.1, libxcb-1.13

任意

xmlto-0.0.28、さらに以下のいずれか1つ: fop-2.3, Links-2.16, Lynx-2.8.9rel.1, and w3m-0.5.3 (libXfont パッケージにて、追加で PDF またはテキストファイルを生成するため).

ユーザー情報: http://wiki.linuxfromscratch.org/blfs/wiki/Xorg7Libraries

Xorg ライブラリのダウンロード

まずはダウンロードするファイル一覧を生成します。 このファイルは、ダウンロード後に各ファイルのチェックサムを確認する際にも利用します。

cat > lib-7.md5 << "EOF"
c5ba432dd1514d858053ffe9f4737dd8  xtrans-1.3.5.tar.bz2
6b0f83e851b3b469dd660f3a95ac3e42  libX11-1.6.6.tar.bz2
52df7c4c1f0badd9f82ab124fb32eb97  libXext-1.3.3.tar.bz2
d79d9fe2aa55eb0f69b1a4351e1368f7  libFS-1.0.7.tar.bz2
addfb1e897ca8079531669c7c7711726  libICE-1.0.9.tar.bz2
499a7773c65aba513609fe651853c5f3  libSM-1.2.2.tar.bz2
eeea9d5af3e6c143d0ea1721d27a5e49  libXScrnSaver-1.2.3.tar.bz2
8f5b5576fbabba29a05f3ca2226f74d3  libXt-1.1.5.tar.bz2
41d92ab627dfa06568076043f3e089e4  libXmu-1.1.2.tar.bz2
20f4627672edb2bd06a749f11aa97302  libXpm-3.5.12.tar.bz2
e5e06eb14a608b58746bdd1c0bd7b8e3  libXaw-1.0.13.tar.bz2
07e01e046a0215574f36a3aacb148be0  libXfixes-5.0.3.tar.bz2
f7a218dcbf6f0848599c6c36fc65c51a  libXcomposite-0.4.4.tar.bz2
802179a76bded0b658f4e9ec5e1830a4  libXrender-0.9.10.tar.bz2
58fe3514e1e7135cf364101e714d1a14  libXcursor-1.1.15.tar.bz2
0cf292de2a9fa2e9a939aefde68fd34f  libXdamage-1.1.4.tar.bz2
0920924c3a9ebc1265517bdd2f9fde50  libfontenc-1.1.3.tar.bz2
b7ca87dfafeb5205b28a1e91ac3efe85  libXfont2-2.0.3.tar.bz2
331b3a2a3a1a78b5b44cfbd43f86fcfe  libXft-2.3.2.tar.bz2
1f0f2719c020655a60aee334ddd26d67  libXi-1.7.9.tar.bz2
0d5f826a197dae74da67af4a9ef35885  libXinerama-1.1.4.tar.bz2
28e486f1d491b757173dd85ba34ee884  libXrandr-1.5.1.tar.bz2
5d6d443d1abc8e1f6fc1c57fb27729bb  libXres-1.2.0.tar.bz2
ef8c2c1d16a00bd95b9fdcef63b8a2ca  libXtst-1.2.3.tar.bz2
210b6ef30dda2256d54763136faa37b9  libXv-1.0.11.tar.bz2
4cbe1c1def7a5e1b0ed5fce8e512f4c6  libXvMC-1.0.10.tar.bz2
d7dd9b9df336b7dd4028b6b56542ff2c  libXxf86dga-1.1.4.tar.bz2
298b8fff82df17304dfdb5fe4066fe3a  libXxf86vm-1.1.4.tar.bz2
d2f1f0ec68ac3932dd7f1d9aa0a7a11c  libdmx-1.1.4.tar.bz2
8f436e151d5106a9cfaa71857a066d33  libpciaccess-0.14.tar.bz2
4a4cfeaf24dab1b991903455d6d7d404  libxkbfile-1.0.9.tar.bz2
42dda8016943dc12aff2c03a036e0937  libxshmfence-1.3.tar.bz2
EOF

必要なファイルをダウンロードするために wget を使って以下を実行します。

mkdir lib &&
cd lib &&
grep -v '^#' ../lib-7.md5 | awk '{print $2}' | wget -i- -c \
    -B https://www.x.org/pub/individual/lib/ &&
md5sum -c ../lib-7.md5

Xorg ライブラリ のインストール

[注記]

注記

複数のパッケージを一つのスクリプトを使って一気にインストールする場合には、ルートユーザーとして実行することが必要となります。 その場合には、以下に示す3つの方法のいずれかを採用することになります。

  1. スクリプトの実行自体をルートユーザーにより行う。(ただし推奨はしません。)

  2. Sudo-1.8.25 パッケージの sudo コマンドを利用する。

  3. su -c "コマンド 引数" の形 (クォーテーションが必要) を利用する。 この場合はコマンドの実行の都度、ルートパスワードの入力が必要になります。

この状況を取り扱う一つの手法として、以下のような bash スクリプトにより適切な方法を自動的に選択する方法が考えられます。 一度コマンドをセットしておけば、再びセットする必要はありません。

as_root()
{
  if   [ $EUID = 0 ];        then $*
  elif [ -x /usr/bin/sudo ]; then sudo $*
  else                            su -c \\"$*\\"
  fi
}

export -f as_root

Some libraries come with a test suite. If you wish to execute them, either comment out the rm -rf ... below, so that, after all libraries are installed, you can come back to the corresponding directory and run make check, or do individual builds, running the tests for each of those distributed with working test suites. Alternatively, you can uncomment the line #make check ..., and at the end, check the test results with:

grep -A9 summary *make_check.log

BLFS developers have confirmed that libX11, libXt and libxshmfence are distributed with working test suites.

まずはサブシェルを起動します。 こうしておけばエラー発生時に終了させることができます。

bash -e

以下のコマンドを実行して、すべてのパッケージをインストールします。

for package in $(grep -v '^#' ../lib-7.md5 | awk '{print $2}')
do
  packagedir=${package%.tar.bz2}
  tar -xf $package
  pushd $packagedir
  case $packagedir in
    libICE* )
      ./configure $XORG_CONFIG ICE_LIBS=-lpthread
    ;;

    libXfont2-[0-9]* )
      ./configure $XORG_CONFIG --disable-devel-docs
    ;;

    libXt-[0-9]* )
      ./configure $XORG_CONFIG \
                  --with-appdefaultdir=/etc/X11/app-defaults
    ;;

    * )
      ./configure $XORG_CONFIG
    ;;
  esac
  make
  #make check 2>&1 | tee ../$packagedir-make_check.log
  as_root make install
  popd
  rm -rf $packagedir
  as_root /sbin/ldconfig
done

上で実行したサブシェルから抜けます。

exit

コマンド説明

./configure $XORG_CONFIG ICE_LIBS=-lpthread: This fixes a change in glibc which breaks pulseaudio at runtime.

--disable-devel-docs: テキストブラウザー機能のない xmlto-0.0.28 をインストールしている場合に、テキストドキュメントを生成しないようにします。 テキストブラウザー機能がある場合は、このパラメーター (あるいは case 文全体) を取り除いてください。

--with-fop: Use fop-2.3 to generate PDF documentation (only for the libXfont package).

Xorg ライブラリ の設定

Xorg のインストール先を /usr としている場合は、これ以降の設定は不要ですから残りの説明は読み飛ばしてください。 異なるインストール先を選んでいる場合は、他のパッケージが要求する環境設定に合わせて、以下の 2 つのシンボリックリンクを生成します。 root ユーザーになって以下のコマンドを実行します。

ln -sv $XORG_PREFIX/lib/X11 /usr/lib/X11 &&
ln -sv $XORG_PREFIX/include/X11 /usr/include/X11

パッケージ構成

インストールプログラム: cxpm, sxpm
インストールライブラリ: libdmx.so, libfontenc.so, libFS.so, libICE.so, libpciaccess.so, libSM.so, libX11.so, libXaw6.so, libXaw7.so, libXaw.so, libXcomposite.so, libXcursor.so, libXdamage.so, libXext.so, libXfixes.so, libXfont2.so, libXft.so, libXinerama.so, libXi.so, libxkbfile.so, libXmu.so, libXmuu.so, libXpm.so, libXrandr.so, libXrender.so, libXRes.so, libxshmfence.so, libXss.so, libXt.so, libXtst.so, libXvMC.so, libXvMCW.so, libXv.so, libXxf86dga.so, libXxf86vm.so
インストールディレクトリ: $XORG_PREFIX/include/X11/fonts, $XORG_PREFIX/include/X11/Xtrans, $XORG_PREFIX/share/doc/libFS, $XORG_PREFIX/share/doc/libICE, $XORG_PREFIX/share/doc/libSM, $XORG_PREFIX/share/doc/libX11, $XORG_PREFIX/share/doc/libXaw, $XORG_PREFIX/share/doc/libXext, $XORG_PREFIX/share/doc/libXi, $XORG_PREFIX/share/doc/libXmu, $XORG_PREFIX/share/doc/libXrender, $XORG_PREFIX/share/doc/libXt, $XORG_PREFIX/share/doc/libXtst, $XORG_PREFIX/share/doc/libXvMC, $XORG_PREFIX/share/doc/xtrans, $XORG_PREFIX/share/X11/locale

概略説明

cxpm

XPM ファイルのフォーマットをチェックします。

sxpm

XPM ファイルを参照したり、XPM 1、XPM 2 ファイルを XPM 3 ファイルに変換します。

libdmx.so

is the X Window System DMX (Distributed Multihead X) extension library.

libfontenc.so

is the X11 font encoding library.

libFS.so

is the library interface to the X Font Server.

libICE.so

is the X Inter Client Exchange Library.

libpciaccess.so

is the generic PCI Access library for X.

libSM.so

is the X Session Management Library.

libX11.so

is the Xlib Library.

libXaw6.so

is the X Athena Widgets Library, version 6.

libXaw7.so

is the X Athena Widgets Library, version 7.

libXaw.so

are symbolic links to the current X Athena Widgets Library, version 7.

libXcomposite.so

is the X Composite Library.

libXcursor.so

is the X Cursor management library.

libXdamage.so

is the X Damage Library.

libXext.so

is the Misc X Extension Library.

libXfixes.so

provides augmented versions of core protocol requests.

libXfont2.so

is the X font library.

libXft.so

is the X FreeType interface library.

libXinerama.so

is the Xinerama Library.

libXi.so

is the X Input Extension Library.

libxkbfile.so

is the xkbfile Library.

libXmu.so

is the X interface library for miscellaneous utilities not part of the Xlib standard.

libXmuu.so

is the Mini Xmu Library.

libXpm.so

is the X Pixmap Library.

libXrandr.so

is the X Resize, Rotate and Reflection extension library.

libXrender.so

is the X Render Library.

libXRes.so

is the X-Resource extension client library.

libxshmfence.so

exposes an event API on top of Linux futexes.

libXss.so

is the X11 Screen Saver extension client library.

libXt.so

is the X Toolkit Library.

libXtst.so

is the Xtst Library.

libXvMC.so

is the X-Video Motion Compensation Library.

libXvMCW.so

is the XvMC Wrapper including the Nonstandard VLD extension.

libXv.so

is the X Window System video extension library.

libXxf86dga.so

is the client library for the XFree86-DGA extension.

libXxf86vm.so

is the client library for the XFree86-VidMode X extension.

最終更新日: 2018-08-22 05:14:23 +0900