CPAN.pm on MacOS X for wwwload.pl
Last described 17-Jun-2001
1. どういう時にCPAN.pmを使うのか?
このサイトで配付している
wwwload.plを、素のMacOS Xのままで使おうとすると、下記のような
エラーメッセージが表示されてうまく動作しません。こんな時に(も)CPAN.pmを使います。
[localhost:~] terra% ./wwwload.pl ¶
Can't locate LWP/UserAgent.pm in @INC (@INC contains: /System/Library/Perl/darwin
/System/Library/Perl /Library/Perl/darwin /Library/Perl /Library/Perl
/Network/Library/Perl/darwin /Network/Library/Perl /Network/Library/Perl .)
at ./wwwload.pl line 8.
BEGIN failed--compilation aborted at ./wwwload.pl line 8.
おことわり
上記説明はCPAN.pmの一面を表わしていますが、どうみてもCPAN.pmを正しく説明した文章とは言えません。
とりあえず、MacOS X上で
wwwload.plが動作せずに困っている初心者向けのドキュメントです。
何が起きているのか?どうすればよいのか?
Perlに詳しい人には今更な説明ですが、必要なモジュールが足りない時に上記のようなメッセージが表示されます。
「それって、寺田が作ったプログラムのバグじゃん」なんて言わないで下さいネ。
MacOS Xに付属しているPerl5.6は、Windows版のActivePerl等と異なり、基本的なモジュールしか含まれていません。
ですから、必要なモジュールをダウンロードしてインストールしてあげることが必要なのです。
2. CPAN.pmの手順
(1) インターネットに接続する
ダイアルアップするなり、Proxyサーバを使うなりして、インターネットに接続してください。
その時、HTTPだけでなく必ずFTPも使えるようにしておいてください。
(2) Terminalを起動する
/Applications/Utilities/Terminal を起動します。
<画面>
(3) CPAN.pmを起動する
起動したTerminalの画面で、下記のようにコマンドを打ち込み最後に
returnキーを押します。
<画面>
[localhost:~] terra% perl -MCPAN -e shell ¶
(4) CPAN.pm動作環境のセットアップ
既に動作環境のセットアップが完了している場合は、(5)へ進んで下さい。
プログラムが何やら色々質問をしてきますが、ほとんどの場合
returnキーを押していけば、何とかなります。
手間のかかる処理だと1,2分ぐらいTerminalの画面が止まったようになりますが、あわてずにのんびりと作業して下さい。
<画面>
注意1:Proxyサーバの設定では、インターネット接続に使用するIPアドレスとポート番号を入力する必要があります。
FTPプロキシのアドレスとポートを
:文字でつないで入力して下さい。
If you're accessing the net via proxies, you can specify them in the
CPAN configuration or via environment variables. The variable in
the $CPAN::Config takes precedence.
Your ftp_proxy? 192.168.0.1:21 ¶
ただし、普通にダイアルアップ接続している場合は、これも
returnキーだけを押していけばOKです。
If you're accessing the net via proxies, you can specify them in the
CPAN configuration or via environment variables. The variable in
the $CPAN::Config takes precedence.
Your ftp_proxy? ¶
Your http_proxy? ¶
Your no_proxy? ¶
注意2:
ダウンロードするサイトの地域と国を質問してきたら、数字を入力して答えてあげましょう。
Asia(2)、Japan(5)と選択してゆき、最後は適当に選んで下さい。(日本国内の方を前提にしています)
First, pick a nearby continent and country (you can pick several of
each, separated by spaces, or none if you just want to keep your
existing selections). Then, you will be presented with a list of URLs
of CPAN mirrors in the countries you selected, along with previously
selected URLs. Select some of those URLs, or just keep the old list.
Finally, you will be prompted for any extra URLs -- file:, ftp:, or
http: -- that host a CPAN mirror.
(1) Africa
(2) Asia
(3) Central America
(4) Europe
(5) North America
(6) Oceania
(7) South America
Select your continent (or several nearby continents) [] 2 ¶
(1) China
(2) Hong Kong
(3) Indonesia
(4) Israel
(5) Japan
(6) Russian Federation
(7) Saudi Arabia
(8) Singapore
(9) South Korea
(10) Taiwan
(11) Thailand
Select your country (or several nearby countries) [] 5 ¶
(1) ftp://ftp.dti.ad.jp/pub/lang/CPAN/
(2) ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/
(3) ftp://ftp.kddlabs.co.jp/CPAN/
(4) ftp://ftp.meisei-u.ac.jp/pub/CPAN/
(5) ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
(6) ftp://ftp.u-aizu.ac.jp/pub/CPAN
(7) ftp://mirror.nucba.ac.jp/mirror/Perl/
Select as many URLs as you like [] 1 ¶
Enter another URL or RETURN to quit: [] ¶
New set of picks:
ftp://ftp.dti.ad.jp/pub/lang/CPAN/
WAIT support is available as a Plugin. You need the CPAN::WAIT module
to actually use it. But we need to know your favorite WAIT server. If
you don't know a WAIT server near you, just press ENTER.
Your favorite WAIT server?
[wait://ls6.informatik.uni-dortmund.de:1404] ¶
commit: wrote /Users/terra/.cpan/CPAN/MyConfig.pm
(5) 必要なモジュールのインストール
下記のよう表示されたら、CPAN.pmの動作環境のセットアップは完了です。
cpan shell -- CPAN exploration and modules installation (v1.52)
ReadLine support available (try ``install Bundle::CPAN'')
cpan>
次に、
install モジュール名と打ち込みモジュールのダウンロードとインストールを開始させます。
wwwload.plを動作させるにはLWPモジュールが必要なので、
install LWPと打ち込みます。
すると、何やらメッセージが大量に表示されるので、次の質問(5-2)になるまで放置しておきます。
cpan> install LWP ¶
Trying with "/usr/bin/ncftp -c" to get
ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/01mailrc.txt.gz
Going to read /Users/terra/.cpan/sources/authors/01mailrc.txt.gz
Trying with "/usr/bin/ncftp -c" to get
ftp://ftp.dti.ad.jp/pub/lang/CPAN/modules/02packages.details.txt.gz
Going to read /Users/terra/.cpan/sources/modules/02packages.details.txt.gz
Scanning cache /Users/terra/.cpan/build for sizes
There's a new CPAN.pm version (v1.59) available!
[Current version is v1.52]
You might want to try
install Bundle::CPAN
reload cpan
......
※LWPモジュールをインストールするとHTTPモジュールも自動的にインストールされます。
つまり、これだけでwwwload.plに必要なモジュールは全部インストールされることになります。
(5-2) インストール中の問い合わせ
LWPモジュールのインストール中に下記のように表示されたら、
returnキーを押して進みます。(設定変更無し)
表示されない場合もあるかもしれませんが、その場合はこの部分は無視して下さい。
Checking for Socket...ok
Checking for IO::Socket...ok
Checking if your kit is complete...
Looks good
Ah, I see you already have installed libnet before.
Do you want to modify/update your configuration (y|n) ? [no] ¶
(6) モジュールのインストールが完了したら
インストールが完了して再びプロンプトが表示されたら、
exitコマンドを打ち込んでCPAN.pmを終了します。
make: [doc_site_install] Error 1 (ignored)
Appending installation info to /System/Library/Perl/darwin/perllocal.pod
/usr/bin/make install -- OK
cpan> exit ¶
Lockfile removed.
[localhost:~] terra%
3. 再挑戦
必要なモジュールのインストールが完了したら、
wwwload.plをもう一度起動してみます。
どうですか、今度は上手く動作したでしょう。
[localhost:~] terra% ./wwwload.pl ¶
Usage: wwwload.pl [-pvV] store_DIR [-a sub_DIR=URL][-d file_name]
[-n max][-u user_agent][-vP] start_URL
-p : Use some argments from '.wwwload' file on store_DIR.
-v : Turn on verbos mode.
-V : Print version information, and quit.
-a : Assign local sub-directory to URL. For multi-hosted contents.
......
[
HOME]
> [
INDEX]
(c) Kazufumi Terada, 2001