HP-UX 9.03 に関する幾つかのメモ


HP-UX A.09.03 A 9000/715 です。
X は X11R5 だそうです。

gcc(gcc-2.8.1.tar.gz)のインストール
./configure
make LANGUAGE=c
make stage1
make CC="stage1/xgcc -Bstage1/" CFLAGS="-g -O2"
make stage2
make CC="stage2/xgcc -Bstage2/" CFLAGS="-g -O2"
make bootstrap LANGUAGES="c" BOOT_CFLAGS="-O2"
make compare
(su) make install

gmake(make-3.77.tar.gz)のインストール
./configure
make
make check
(su) make install

以後は/usr/local/bin/makeを使う。

bison(bison-1.26.tar.gz)のインストール
./configure
make
make check
(su) make install

flex(flex-2.54.tar.gz)のインストール
./configure
make
make check
(su) make install

binutils(binutils-2.9.1.tar.gz)のインストール
./configure
make
(su) make install
ldは作成できない

gcc,g++,g77(gcc-2.8.1.tar.gz,g77-0.5.23.tar.gz)のインストール
g77-0.5.23.tar.gzを展開後、g77-0.5.23/*をgcc-2.8.1/に移動
make distclean
./configure --with-gnu-as
make bootstrap
(su) make -k install

libstdc++(libstdc++-2.8.1.1.tar.gz)のインストール
環境変数CXXをgccにセット
./configure
make
(su) make install

gnu patch(patch-2.5.tar.gz)のインストール
./configure
make
(su) make install

vncviewer(vnc-3.3.2r3.unixsrc.tgz)のインストール[ccを使用]
random,srandom,usleepをリンクできないので、 libvncauth/vncauth.cで、random()はrand(),srandom()はsrand()に書きかえる。 vncviewer/rfbproto.c及びx.cで、usleep(arg*1000)をsleep((arg/1000)+1)に書きかえる。
Xvncに移動、xmkmf; make World : 無理だった。
vncviewerは作成可能、使用可能。

Secure Shell(ssh-1.2.27.tar.gz)のインストール[ccを使用]
configure
make
make install
/etc/servicesと/etc/inetd.confにsshのエントリを追加

ntpdate(xntp3.5a.tar.gz)のインストール[ccを使用]
make all
ntpdate を/usr/local/sbinにインストール
/etc/netlinkrc に /usr/local/sbin/ntpdate -s hoge.host.domain を行うように記入(NFSの前)

tracerouteのインストール[ccを使用]
会津大学から traceroute-97.05.24-ss-10.10.tar.gzを もってきて展開、make
make前に、port.h の #define NO_RAW_IP 付近の前後のコメントをはずす。
COPTSのエラーは無視。/usr/local/bin へインストール

xdm でのログインの記録
sessreg.cを入手(場所は失念)、コンパイルし、/usr/bin/X11 へインストール
/usr/lib/X11/xdm/xdm-configを修正
   DisplayManager._0.startup: /usr/new/lib/X11/xdm/GiveConsole
   DisplayManager._0.reset:   /usr/new/lib/X11/xdm/TakeConsole
の部分を
   DisplayManager*startup:    /usr/new/lib/X11/xdm/Xstartup
   DisplayManager*reset:      /usr/new/lib/X11/xdm/Xreset
   DisplayManager._0.startup: /usr/new/lib/X11/xdm/Xstartup0
   DisplayManager._0.reset:   /usr/new/lib/X11/xdm/Xreset0
に変える。

以下のファイルの追加と変更
/usr/lib/X11/xdm/Xreset0
  /usr/bin/X11/sessreg -d -l $DISPLAY $USER
  /usr/new/lib/X11/xdm/TakeConsole
  exit 0
/usr/lib/X11/xdm/Xreset
  /usr/bin/X11/sessreg -d -l $DISPLAY $USER
  exit 0
/usr/lib/X11/xdm/Xstartup0
  if [ -f /etc/nologin ]; then
    exit 1
  fi
  /usr/bin/X11/sessreg -a -l $DISPLAY $USER
  /usr/new/lib/X11/xdm/GiveConsole
  exit 0
/usr/lib/X11/xdm/Xstartup
  if [ -f /etc/nologin ]; then
    exit 1
  fi
  /usr/bin/X11/sessreg -a -l $DISPLAY $USER
  exit 0
xlockmoreのインストール
./configure --with-x --without-motif --without-editres --without-xpm --without-gltt --without-ttf --without-opengl --without-mesa --without-dtsaver --without-dpms --without-rplay --without-nas --without-gtk --disable-gtktest
足りないヘッダファイルをXFree86-4.1.0 の配布物から持ってきて make, make install

FreeBSDふう hd をつくる
sourceを用意
cc -D_OLDHP hd2.c -o hd
適当なところへインストール
hp-ux9.03 の od や、GNU textutils の od は、FreeBSDの hd のような表示はできないので、 止む無く書いてみました。hd でなきゃやだっ、って人にどうぞ。

tcp_wrappers
tcp_wrappers_7.6.tar.gz を展開
make hpux
tcpd, tcpdchk, tcpdmatch 等を /usr/local/sbin にコピー、その他マニュアルなどもコピー
/etc/hosts.{allow,deny}を作成

SSH3
ssh-3.1.0.tar.gz を展開
./configure --without-ipv6 --prefix=/usr/local --without-pgp --with-x --without-daemonpam --without-clientpam
ソース修正. HP-UX 10.x用にかかれているので、hpsecurity.h, prot.hやiscomsec()関数関連を 使わないようにする。これらのパッチ
make, make installでインストール。
但し、SSH CommunicationsのSSH2は、OpenSSHとは互換性がなく、またSSH1クライアントから アクセスするとハングアップすることなど、問題が多そうなので、とりあえず放置。
OpenSSH は OpenSSL を必要とし、OpenSSL は perl5 を必要とするので断念。

ssh-1.xの更新
ssh-1.3.32.tar.gz を展開
./configure
ソース修正。コンパイルはとおるが、inetd経由でのdaemonが終了しない。
make, make install

プライベートアドレス
192.168.192.0/23等というアドレス空間が使えない。/etc/netlinkrcでネットマスクを設定しても、プライベートアドレスだけは ふさわしいclassまで小さい空間に丸められる。より小さくするのは可能な模様。

nkf
sourceforge.jpのCVSリポジトリからソースコードを取ってきて、 Makefileで"CC = cc"を"CC = gcc"に、"CFLAGS = -O"を"CFLAGS = -O2 -Wall"にして(g)make。
"nkf"を/usr/local/binにコピーし、更に作成したnkfで"nkf.1j"をSJISに変換して"/usr/local/man/japanese/man1/nkf.1"としてコピー。
"nkf.1"も"/usr/local/man/man1"にコピー。

zlib
zlib-1.2.1.tar.gz を入手
./configure (この時点でgccを検出して使用)
/usr/local/bin/make
/usr/local/bin/make install
注:"vsnprintf()が無いからbuffer overflowしても知らないよ"と言われるが、無視する。


GO PREV.つるたにの自己紹介へ戻る
GO PREV.つるたにのホームページへ戻る
turutani@scphys.kyoto-u.ac.jp