次のページ 前のページ 目次へ

5. 全てのものをインストールする

これは全てをインストールするためのものです。私はすでにこれを行なう前に インストールした ELF システム(コンパイラ、カーネルなど...)を持っていま す。

  1. まず、binutils パッケージをインストールしました。
    tar xzf binutils-2.6.0.2.bin.tar.gz -C /
    
  2. 次にダイナミック・リンカをインストールしました:
    tar zxf ld.so-1.7.12.tar.gz -C /usr/src
    cd /usr/src/ld.so-1.7.12
    sh instldso.sh
    
  3. 次に libc バイナリをインストールしました。詳しい手順は libc-5.2.18 のリリースノートを参照してください。
    rm -f /usr/lib/libc.so /usr/lib/libm.so
    rm -f /usr/include/iolibio.h /usr/include/iostdio.h
    rm -f /usr/include/ld_so_config.h /usr/include/localeinfo.h
    rm -rf /usr/include/netinet /usr/include/net /usr/include/pthread
    tar -xzf libc-5.2.18.bin.tar.gz -C /
    
  4. 新しい共有ライブラリを認識させるために ldconfig を実行する必 要があります。
    ldconfig -v
    
  5. libc には make やいくつかのプログラムを壊すバグがあります。私 は次のように make を再構築し、インストールしました: [ 訳注: 新しい libc で使える make-3.74 のバイナリもあります ]
    tar zxf make-3.74.tar.gz -C /usr/src
    cd /usr/src/make-3.74
    patch < /whereever_you_put_it/release.libc-5.2.18
    configure --prefix=/usr
    sh build.sh
    ../make install
    cd ..
    rm -rf make-3.74
    
  6. さあ、これで localedef をコンパイル、インストールできます。
    mkdir /usr/src/libc
    tar zxf libc-5.2.18.tar.gz -C /usr/src/libc
    cd /usr/src/libc
    cd include
    ln -s /usr/src/linux/include/asm .
    ln -s /usr/src/linux/include/linux .
    cd ../libc
    ../configure
    
    # 私はこの2回の make が必要なことかどうかは自信がありませ
    # んが、安全のためにやっているだけです。
    
    make clean ; make depend
    cd locale
    make programs
    mv localedef /usr/local/bin
    mv locale /usr/local/bin
    
  7. localedef がそれらを見つけるところに charmap を置いて下さい。 これは charmap.tar として dkuug.dk ftp サイトからダウンロード できる、 charmap と locale ソースを用います。
    tar xf charmaps.tar -C /tmp
    mkdir /usr/share/nls
    mkdir /usr/share/nls/charmap
    mkdir /usr/share/locale
    mv /tmp/charmaps/* /usr/share/nls/charmap
    rm -rf /tmp/charmaps
    tar xf locales.tar -C /usr/share # 好きなところに置いてください
    #
    # locale ソースのいくつかは `copy' を使い、これは他の
    # locale に依存します。私は以下のコマンドを作成するための
    # makefile を grep、cut、sed を使って作成しました。これは
    # /usr/share/locale ディレクトリにある全ての locale オブ
    # ジェクトを作成します。
    #
    localedef -ci locales/en_DK -f ISO_8859-1:1987 en_DK
    localedef -ci locales/sv_SE -f ISO_8859-1:1987 sv_SE
    localedef -ci locales/fi_FI -f ISO_8859-1:1987 fi_FI
    localedef -ci locales/sv_FI -f ISO_8859-1:1987 sv_FI
    localedef -ci locales/ro_RO -f ISO_8859-1:1987 ro_RO
    localedef -ci locales/pt_PT -f ISO_8859-1:1987 pt_PT
    localedef -ci locales/no_NO -f ISO_8859-1:1987 no_NO
    localedef -ci locales/nl_NL -f ISO_8859-1:1987 nl_NL
    localedef -ci locales/fr_BE -f ISO_8859-1:1987 fr_BE
    localedef -ci locales/nl_BE -f ISO_8859-1:1987 nl_BE
    localedef -ci locales/da_DK -f ISO_8859-1:1987 da_DK
    localedef -ci locales/kl_GL -f ISO_8859-1:1987 kl_GL
    localedef -ci locales/it_IT -f ISO_8859-1:1987 it_IT
    localedef -ci locales/is_IS -f ISO_8859-1:1987 is_IS
    localedef -ci locales/fr_LU -f ISO_8859-1:1987 fr_LU
    localedef -ci locales/fr_FR -f ISO_8859-1:1987 fr_FR
    localedef -ci locales/de_DE -f ISO_8859-1:1987 de_DE
    localedef -ci locales/de_CH -f ISO_8859-1:1987 de_CH
    localedef -ci locales/fr_CH -f ISO_8859-1:1987 fr_CH
    localedef -ci locales/en_CA -f ISO_8859-1:1987 en_CA
    localedef -ci locales/fr_CA -f ISO_8859-1:1987 fr_CA
    localedef -ci locales/fo_FO -f ISO_8859-1:1987 fo_FO
    localedef -ci locales/et_EE -f ISO_8859-1:1987 et_EE
    localedef -ci locales/es_ES -f ISO_8859-1:1987 es_ES
    localedef -ci locales/en_US -f ISO_8859-1:1987 en_US
    localedef -ci locales/en_GB -f ISO_8859-1:1987 en_GB
    localedef -ci locales/en_IE -f ISO_8859-1:1987 en_IE
    localedef -ci locales/de_LU -f ISO_8859-1:1987 de_LU
    localedef -ci locales/de_BE -f ISO_8859-1:1987 de_BE
    localedef -ci locales/de_AT -f ISO_8859-1:1987 de_AT
    localedef -ci locales/sl_SI -f ISO_8859-2:1987 sl_SI
    localedef -ci locales/ru_RU -f ISO_8859-5:1988 ru_RU
    localedef -ci locales/pl_PL -f ISO_8859-2:1987 pl_PL
    localedef -ci locales/lv_LV -f BALTIC lv_LV
    localedef -ci locales/lt_LT -f BALTIC lt_LT
    localedef -ci locales/iw_IL -f ISO_8859-8:1988 iw_IL
    localedef -ci locales/hu_HU -f ISO_8859-2:1987 hu_HU
    localedef -ci locales/hr_HR -f ISO_8859-4:1988 hr_HR
    localedef -ci locales/gr_GR -f ISO_8859-7:1987 gr_GR
    

次のページ 前のページ 目次へ