[LHR]: ファイルを Download する (wget)
Wget は HTTP、FTP 経由でファイルを一括で download するソフトウェアです。現在、GNU
License で公開されています。
web page の一括 download 機能として人気があります。私は download 専用プログラムとして重宝しています。Reget
のように途中で接続が切れても続きから再 download 出来るんですよ。source
が公開されている分、信頼度が高いです。
お勧め
関連情報
- [OpenSSL]
Wget 1.7 から OpenSSL をサポートしたようです。これで SSL 対応の page からも
download 出来るようになりました。
- [OpenSSL日本語サイト]
少し古めな情報ですが、日本語訳された page です。
Tips
Appendix
Windows 版での make 実践編
Visual C++ による OpenSSL 付き Build (Wget 1.7)
デフォルト状態では OpenSSL サポートでの Build は出来ないようです。少々手を加える必要があります。
Static Library による Build
libeay32.dll、ssleay32.dll を使用しない、Static Library で Build します。この場合、libeay32.lib
ssleay32.lib を組み込むことで Wget.exe 単体で SSL をサポートできますが、OpenSSL
が minor update した場合には Wget ごと Build し直しになります。一長一短ですな。
- OpenSSL を Static Library build します
OpenSSL は本拠地 [OpenSSL] から取得してきてください。今回(01/09)は最新版の OpenSSL 0.9.6b を使用しました。ちなみに
OpenSSL を Build するためには [ActivePerl(ASPN)] もインストールする必要があります。
「ms\do_ms」 → 「nmake -f ms\nt.mak」を実行します。うまく build 出来ましたか?
「cd out32」→「..\ms\test」で動作確認出来ます。問題なければ「passed all
tests」と表示されるはずです。
- OpenSSL に INCLUDE、LIB を通します
私は面倒くさかったので bat で環境変数に直接記述しちゃいました。
(ex.)
INCLUDE=%INCLUDE%;..\..\openssl-0.9.6b\inc32;
LIB=%LIB%;..\..\openssl-0.9.6b\out32;
- Wget のファイルを変更します
変更した file を rename して ./windows に上書きしてください。詳細は diff
で確認してください。
「config.h.ms.010925(config.h.ms)」、「makefile.src.010925(Makefile.src)」
- Wget を build します
「configure --msvc」→「nmake」で OK。
うまく行けば ./src にデブチンな wget.exe(588KB位) が出来ています。
- 動作確認しませう
HTTPS な page として [NetSecurity] を利用させてもらいました。
「C:\>wget https://www.netsecurity.ne.jp/」を実行してみた所、Wget with
OpenSSL の場合問題なく get 出来ましたが、Wget without OpenSSL の場合には「https://www.netsecurity.ne.jp/:
Unknown/unsupported protocol.」と表示され get 出来ませんでした。
どうやら正しく動作しているようです =)。
Dynamic Library による Build
libeay32.dll、ssleay32.dll を使用する場合の Build 方法です。
- OpenSSL を Dynamic Library build します
「ms\do_ms」 → 「nmake -f ms\ntdll.mak」を実行します。
うまく build 出来ましたか?
「cd out32dll」→「..\ms\test」で動作確認出来ます。
- OpenSSL に INCLUDE、LIB を通します
DLL 版の Lib は「out32dll」です。間違わないようにね。
(ex.)
INCLUDE=%INCLUDE%;..\..\openssl-0.9.6b\inc32;
LIB=%LIB%;..\..\openssl-0.9.6b\out32dll;
- 後は Static Library と同じ =)
without OpenSSL と同じ位の大きさの Wget.exe(140KB) が出来ているはずです。当然ですが近場(wget.exe
と同じ場所、もしくは $(WINNT)\System32) に libeay32.dll、ssleay32.dll が無いと「DLL
が見つかりません」エラーが表示されます。
Borland C++ Compiler 5.5 による Build (Wget 1.6、1.7)
[Borland C++ Compiler 5.5 Practice for Examples Wget] で取り上げています。
Cygwin による Build (Wget 1.7 with OpenSSL)
01/09 現在 Wget 1.6-1 までのサポートだったので Wget 1.7 で build してみました。既に
OpenSSL もインストールされている環境下だったのでやることが殆ど無かったです
=)。
- ./configure --with-ssl=./lib
- make install
[Home] → [My Glossary Index] → [[LHR]: ファイルを Download する (wget)]
Copyright (c) 2001-2003 Makoto NARA(Mc.N), All rights reserved.
[Terms of Use]