7

gmail の smtp サーバーと perl を使用してメールを送信したいと考えています。をインストールしようとしEmail::Send::Gmailていますが、インストール手順がわかりません。インストールしていない他のモジュールに依存しているようです。

4

6 に答える 6

6

これは、使用している Perl のディストリビューションによって部分的に異なります。

ActivePerl には、モジュールをインストールするための PPM (Perl Package Manager) と呼ばれるユーティリティが含まれています。依存関係の解決を自動的に処理します。PPM は、コンパイラが通常利用できない Windows に XS モジュールをインストールする場合に特に便利です。PPM の欠点は、一部の CPAN モジュールが利用できないことです (おそらく、それらは ActiveState の自動ビルド プロセスに失敗するためです)。スタート メニューから、またはppmコマンド プロンプトで入力して、PPM を実行できます。

より一般的なオプションは、インタラクティブなCPANシェルを使用することです。この方法を使用して XS モジュールをインストールするには、コンパイラが必要であることに注意してください。cpanコマンド プロンプトで入力して、cpan シェルにアクセスできます。

最後の手段である強引なアプローチは、CPAN から tarball をダウンロードし、一度に 1 つずつ手動でインストールすることです。依存関係が満たされていないためにインストールが中止された場合は、それらをダウンロードしてインストールしてから、最初のモジュールに戻って再試行してください。

于 2009-12-10T14:43:16.887 に答える
3

タイプ:

 cpan Email::Send::Gmail

...コマンドプロンプトで。

最初にlocal::libをセットアップするのはおそらく良い考えです。

またはCPAN モジュールのインストールに関する Perl Foundation Wiki を参照してください。ただし、root アクセス権はありません

または、モジュールのインストールに関する CPAN ガイドを参照してください。

于 2009-12-10T13:38:21.493 に答える
3

ActivePerl を使用している場合は、最初に ActivePerl に付属のPPM (Perl Package Manager)ツールを試してください。モジュールをインストールするように指示すると、すべての依存関係を処理する必要があります。

Email::Send::Gmailの依存関係ツリーに注意してください。これらのモジュールの一部では、サード パーティ ソフトウェアの追加インストールが必要ですcpan

于 2009-12-10T17:52:42.957 に答える
1

おそらく次の方法でインストールできます。

perl -MCPAN -e shell
install Email-Send-Gmail

それが役に立てば幸い、

/クラウス

于 2009-12-10T13:39:07.863 に答える
1

インストール方法を混在させると、必要のない心痛と頭痛が生じます。

Active Perl で CPAN を使用しないでください。PPM を使用します。*

PPM のダウンロード ソースは、Randy Kobes のサイトにあります。

必要なモジュールの PPM が見つからない場合は、Kobes 氏の make_ppmを使用して簡単に独自の PPM を構築できます。

ディストリビューションをダウンロードして実行するだけmake_ppmで PPM をビルドできますが、私はより「通常の」ビルド プロセスを実行することを好みます。

perl Makefile.PL
make
make test
make_ppm

*c:/perl/site/* 以外にファイルをインストールする場合は、CPAN を使用しても問題ありません。CPAN シェル モジュールと PPM モジュールを混同しないでください。

于 2009-12-10T21:27:33.497 に答える
1

できれば、CPAN. (ha! 韻を踏む...なんて犯罪だ。おっと、またやった!いつ終わるんだろう... :p) 基本的には、システムにモジュールをインストールする方法です依存関係を自動的に検出し、ダウンロード、インストール、およびテストをすべて実行し、ビルドまたはテストが失敗した場合はバックアウトします。これは、モジュールをインストールする素晴らしい信頼できる方法です。Strawberry Perl を含む、ActiveState のディストリビューション以外の基本的に任意の Perl ディストリビューションを使用している場合、これはうまく機能します。一般に、これは

cpan Module::Name

または、インタラクティブモードでは、

$ cpan
cpan > install Module::Name

ActiveState Perl を使用している場合は、おそらく ActiveState の PPM (Perl Package Manager) を使用する必要があります。CPAN に似ていますが、すべてが ActiveState Perl 用に事前に構築されています。ActiveStateの Web サイトには、グラフィカルな例を含むPerl Package Manager の使用方法に関するドキュメントがあります。

簡単なオプションが失敗しても、運が悪いわけではありません。より複雑ですが、モジュールをインストールするために手動で実行できる方法がいくつかあります。

ダウンロードできるほとんどのモジュールには、.yaml ファイルに少しのメタデータが含まれています。これは、すべての依存関係があるかどうかを判断するのに役立ちます。CPAN と PPM はすべての依存関係を自動的に解決してインストールしますが、手動で行うと解決せず、そのタスクはユーザーに任されます。

すべての依存関係があり、手動でインストールする必要があると仮定すると、Makefile.PL または Build.PL の 2 つのファイルのいずれかを探します。Makefile.PL がある場合はcd、コマンド プロンプト内でモジュールを抽出したディレクトリに移動し、次のように入力します。

perl Makefile.PL
make
make test
make install

システムに「make」プログラムが必要です。ActiveState Perl の場合は、モジュールを手動でインストールする必要がある場合があります (1 ~ 2 段落を参照してください)。

Build.PL がある場合は、少し異なる一連の手順を実行する必要があります。

perl Build.PL
Build
Build test
Build install

(もちろん、make/Build テストが失敗した場合はインストールしないことを検討することもできますが、それはあなた次第です。)

xsモジュールにファイル (つまり、インストール時にコンパイルする必要があるコード) がなく、すべての依存関係が満たされている場合、最後の代替手段として、フォルダー内のファイルをlibperl インストールのsite\libフォルダーに移動するだけです。1 つのプロジェクトにのみ使用する場合は、PERL5LIB 環境変数を追加して、新しいカスタム ライブラリ ディレクトリ (例: /my/project/lib) を指定し、ツールを実行する前に環境が設定されていることを確認します。

フォローアップとして、PerlFaq8 - How do I install a module from CPAN を参照してください。

また、PerlFaq8 - How do I keep my own module/library directory? も参照してください。.

于 2009-12-10T16:48:35.887 に答える