必要なファイルは gpm, gpm.h, libgpm.so.1.17.3 のみっつ。% zcat gpm-1.17.8.tar.gz | tar -xv % cd gpm-1.17.8 % zcat ../gpm-1.17.8-psion5-0.1.diff.gz | patch -p1 % CC=arm-linux-gcc ./configure % make
% su root # cp gpm /flashcard/usr/local/sbin # cp gpm.h /usr/local/arm-linux/include # cp libgpm.so.1.17.3 /flashcard/usr/local/lib # cp libgpm.so.1.17.3 /usr/local/arm-linux/lib # pushd /usr/local/arm-linux/lib # ln -sf libgpm.so.1.17.3 libgpm.so # popd # exit %
できあがった libgc.so.0 を母艦(/usr/local/arm-linux/lib/) と Psion5 (/usr/local/lib/) の両方にインストールしておきます。% zcat gc5.0alpha4.tar.gz | tar -xv % cd gc % zcat ../gc5.0alpha4-armlinux.diff.gz | patch -p1 % make
% su root # mount /flashcard # cp libgc.so.0 /flashcard/usr/local/lib/ # cp libgc.so.0 /usr/local/arm-linux/lib/ # mkdir /usr/local/include/gc # cp gc.h gc_*.h /usr/local/include/gc # cp gc.h gc_*.h /usr/local/arm-linux/include/ # pushd /usr/local/arm-linux/lib/ # ln -sf libgc.so.0 libgc.so # popd # exit %
% zcat w3m-0.1.6.tar.gz | tar -xv % cd w3m/ % ./configure % pushd gc % make gc.a % su root # cp gc.a /usr/local/lib/libgc.a # exit % popd % make
出来上がった mktable はどこかに避難させておきます。
% mv mktable .. % make clean
./configure の要点は C-compiler をどうするか尋ねられた時に "arm-linux-gcc" と答えるところだけです。 また gc が正しくインストールされていれば、gc/ は必要ありません。% zcat ../w3m-0.1.6-psion5-0.1.diff.gz | patch -p1 % rm -rf gc % ./configure
おそらく config.h 中の SYS_LIBRARIES の -lbsd は余計なので削ります。 ./configure は arm-linux-gcc を指定してあっても、i386 側の環境から libgc や libbsd を探し出してきてしまうようです。% emacs config.h
mktable が arm 用バイナリで上書きされないように注意しながら、- SYS_LIBRARIES = -lgpm -lbsd -lncurses + SYS_LIBRARIES = -lgpm -lncurses
で w3m ができあがります。% cp ../mktable . % make
もちろん gpm を動かしておけばペンも効きます。 なかなか便利。 gpm は以下のように動かしておきます。
# gpm -t psion5 -m /dev/touch_psion