計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)

Solaris8 にて openssl-1.0.1g を構築する 《古い》


準備
  /dev/random に相当するデバイスファイルが必要だが, Solaris8 の場合,
  かつて SunSolve から出ていたパッチ 112438-02 を当てる必要がある.
  現在は, Sun の契約番号を持っていれば, Sun を買収した Oracle のサイトから
  ダウンロードできるようである(未確認).

コンフィギュレーション
  ./Configure --prefix=/usr/local --openssldir=/usr/local/etc/openssl shared solaris-sparcv9-gcc

  ※ このオプションでバイナリは /usr/local/bin, /usr/local/lib に,
     設定ファイルなどは /usr/local/etc/openssl に, それぞれインストールされる.
     shared は動的ライブラリも作成するための引数.

  ※ Forte6 の cc ではコンパイル時にエラーが出るので GNU C コンパイラを使うよう
     設定すること.

メイク
  gmake

  ※ コンフィグレーション時, PATH の設定により gcc ではなくて cc (Forte6) で
     コンパイルするよう設定されたが (config コマンドはプラットフォームを
     solaris-sparcv9-cc と認識), 問題なくコンパイルが完了し make test も
     エラーなく終了した.

インストール
  gmake INSTALL_PREFIX= install
  
  ※ 標準の make ではうまくインストールできない場合がある.

後処理
  オンラインマニュアルは, 同じ内容のものが別の項目のマニュアルとして
  シンボリックリンクで作成されるので, gzip 化をするには都合が悪い.
  次のようにして別個のファイルとして作成し直す.

  cd /usr/local/etc/openssl/man;
  for i in `find . -type l -print`; do 
    eval `ls -l $i | awk '{printf "LINK=%s;FILE=%s;\n",$9,$11}'`;
    DIR=`dirname $LINK`;
    LINK=`basename $LINK`;
    echo $DIR $LINK $FILE;
    /bin/rm $DIR/$LINK; /bin/cp $DIR/$FILE $DIR/$LINK;
  done

  /usr/local/etc/openssl/openssl.cnf の編集
  openssl-1.0.0? からのアップデートなら前のバージョンのをそのまま使えばよい

備考
  OpenSSL のアップデートで影響をうけるもの
    Apache, OpenSSH, sendmail, Gtk (mozilla, gimp)
    ただし libssl.so.0.9.* と libcrypt.so.0.9.* の古いバージョンを
    新しいものにシンボリックリンクしておけば大丈夫.


計算機メモ目次 (目的のページと内容が一致しない場合, 目次から探してください)
海洋大循環分野
daigo@ocg.aori.u-tokyo.ac.jp