Last modified: 00/08/29
[sakapon's ホーム] - [メモのページ]

HP-UX で GNOME
無保証です。 内容の間違いに関してはメール を頂けると嬉しいです。

HP-UX10.01 で GNOME 環境をひととおりコンパイルしてみたときのメモです。 各ソフト/ライブラリ名のリンク先がインストールログになっています (context diff 形式がそのまま含まっているので、そのファイル自体を パッチとして当てられると思います)。
またこのログ内では、「tarball をほどいて cd して」が自明な奴は省略してる場合もあります。
The HP-UX Porting and Archive Centre にもバイナリパッケージ、HP-UX 用パッチ済みのソースがあるので 手軽さ的にはそっちを使うべきだと思います (sawfish とかが無いので完璧ではないが)。

ちなみに、GNOME はもとから日本語メッセージカタログが同梱されていますので、 日本語化パッチ等は *必要ありません*。このページのログ通りにやれば、 メニュー等は勝手に日本語になります。

  1. 環境
    HP9000/J210, HP-UX B.10.01
    gcc-2.95.1, X11R6.3 をインストール済み
    他に今回強く関係ありそうなものとして、libtool-1.3.5, GNU gettext-0.10.35 をインストール済み、また GNU 関係の主要なツール類は大抵インストール済み

  2. 準備
    GNU gettext(xgettext)は ja_JP.SJIS での使用は殆んど考慮されていない。 なので、システム全体のロカールを ja_JP.eucJP に変更してしまう。 /etc/rc.config.d/LANG の LANG を ja_JP.SJIS から ja_JP.eucJP に変更してリブート。

  3. よく出るコンパイルエラー
    GNOME は、 以下のコンパイルでは大抵の場合 ./configure ; make ; make install という例の呪文でコンパイルできるが、たまに HP-UX 特有と思われる コンパイルエラーで止まる。 ここでは以下のような対処をした(このページのインストールログはこの対処済み)。
    1. setreuid(), setregid() が無い
      HP-UX10.01 には確かに無い。代わりに setresuid(), setresgid() というのがあるので、それを使うようにする。
      setreuid(ruid, euid) → setresuid(ruid, euid, -1)
      
    2. PATH_MAX が定義されていない
      /usr/include/limits.h に 1023 と定義されているが、ある条件下でないと定義されない。 行儀の良いプログラムではこの辺の処理はちゃんとなされてるが、そうでないのもあるので、 エラーが出たときは以下を付け足すべし。
      #include <limits.h>
      #define PATH_MAX _POSIX_PATH_MAX
      
    3. usleep() が無い
      実際無い。ので、qvwm のソースから(というか、usleep() が無いシステムでは 大体このやりかたをするようだ)同等の定義をもらってくる。
      #include <time.h>
      void usleep(unsigned long usec)
      {
        struct timeval tm;
        
        if (usec <= 0)
          return;
        
        tm.tv_usec = usec % 1000000;
        tm.tv_sec = usec / 1000000;
        
        select(1, NULL, NULL, NULL, &tm);
      }
      
    4. db2htmlコマンドが無い
      これは無視して良いみたい。

  4. 必須な補助ソフト、補助ライブラリ達のうち、既に導入済みだったもの
    jpegsrc.v6b, libpng-1.0.8, libungif-4.1.0b1, tiff-v3.5.5, gtk+-1.2.8, glib-1.2.8

  5. 必須なライブラリ(この順番にインストールしていった)
    libgr-2.0.13, ImageMagick-5.2.2, zlib-1.1.3, guile-1.4, db-2.7.7(Berkeley DB), gdk-pixbuf-0.8.0

  6. gnome-libs に必要なもの
    audiofile-0.1.9, esound-0.2.19, libxml-1.8.9, ORBit-0.5.3, imlib-1.9.8.1

  7. メインの GNOMEモジュールに必要なもの
    gnome-libs-1.2.3, libgtop-1.0.9, libghttp-1.0.7

  8. メインの GNOMEモジュール
    control-center-1.2.0, gnome-core-1.2.1, mc-4.5.51

  9. オプショナルだが、あると便利なもの
    gnome-applets-1.2.1, gtk-engines-0.10, libglade-0.14, gnome-print-0.20, users-guide-1.2, gnome-utils-1.2.0, gnome-pim-1.2.0, gnome-media-1.2.0, gnome-audio-1.0.0, gnome-games-1.2.0

  10. さらにオプショナルなもの
    ee-0.3.12, gtop-1.0.9, ggv-0.95, icewm-1.0.4
    残念ながら、sawfish, enlightenment は make できず (HP-UX10.01 はシェアードライブラリ関係が貧弱なため。10.01より上は知らない)。

  11. 起動の仕方
    $HOME/.vueprofile
    #!/bin/sh
    exec $HOME/.xinitrc
    

    $HOME/.xinitrc
    #!/bin/sh
    export LANG=ja_JP.eucJP
    export PATH=/usr/local/bin:/usr/X11R6/bin:$PATH
    exec /usr/local/bin/gnome-session
    

    としておいてあとは普通に vue のログインマネージャからログインすれば良い。

  12. 問題
    • control center(gnomecc) が結構コアダンプする(T_T)
    • HP9000/J210だと *重い*(T_T)
    • HP9000/J210だと256色しか出ない(そんないまどきっ!)(T_T)
  13. リンク

sakapon@imc.im.hiroshima-cu.ac.jp

[sakapon's ホーム] - [メモのページ]