最終更新日: 2002/03/04
今はOMPがringサーバのミラーを停止しているので http://www.ring.gr.jp/pub/CPAN/src/unsupported/4.036/ あたりからどうぞ。
…というわけで、まずはアーカイブを適当な場所でばらして ドキュメントを熟読したあとで コンパイルします。
% cd /home/local/tmp % tar xzvf /tmp/perl-4.036.tar.gz % cd perl-4.036 % ./ConfigureConfigureスクリプトを動かしたときは、ライブラリとして 「/usr/lib/libc.so」のかわりに 「/usr/lib/libc.a」を指定するのがポイントです。
% make depend % makemakeすると、以下のようなメッセージが出てa2pのコンパイルでコケます。
util.h:45: conflicting types for `setenv' /usr/include/stdlib.h:123: previous declaration of `setenv' *** Error code 1これは、x2p/util.hの45行目にあるsetenv()の宣言が stdlib.hの宣言と合致しないのが原因です。 ここでは、x2p/util.hの45行目をコメントアウト (「/* void setenv(); */」とする) して回避します。
% vi x2p/util.h % make % vi installperlinstallperlスクリプトを(make installで)実行すると、 /usr/bin/perlを上書きしてしまいます。 そこで、3行目($mainperldir = "/usr/bin";)を 書き換えます($mainperldir = "/home/local/perl4/bin";)。
# mkdir -p /home/local/perl4/bin # mkdir -p /home/local/perl4/man/man1 # mkdir -p /home/local/perl4/lib # make installまた、perl4で呼び出せるように、 パスに登録されているディレクトリから実行ファイルにリンクを張っておく と便利です。
# cd /home/local/bin # ln -s /home/local/perl4/bin/perl perl4
もっと酔狂なものも用意してみました。
% cd /home/local/tmp % tar xzvf /cdrom/archives/tex/driver/ps/psmulti.tgz % cd psmulti % more README次にインストールスクリプトをいじります。 先頭行(「#!行」)とインストール先を変更しておきます。
% vi Installperl(「#!行」と「$PERLEXE」)には、 さきほどインストールしたperl-4.036 (/home/local/perl4/bin/perl) を指定し、 インストール先 ($BINDIR, $LIBDIR, $MANDIR) には、 /home/local/{bin,lib,man}を指定しました。
インストールスクリプトをいじったら、 rootに変身して実行します。
# mkdir -p /home/local/lib/psmulti # /home/local/perl4/bin/perl Installさらに、インストールされた psmulti および psfix スクリプトの 先頭行が正しくないので修正しておきます。
# vi /hoem/local/bin/psmulti # vi /hoem/local/bin/psfix