2

Excel シートの読み取り/書き込み、Oracle データベースへの接続など、いくつかのタスクを含む Perl スクリプトで作業する必要があります。

最初にActivePerlを使用しました。モジュールのインストール時に、ActivePerl がエラーをスローしました。

承認が必要です 401

(つまり、モジュールを追加するには営業許可が必要です。)

それから Strawberry Perl で同じことを試みましたが、それでもインストールできませんでした。

私が試したこと:

  1. CPAN
  2. ppm
  3. モジュールをダウンロードし、nmake を使用してインストールします
  4. Padre Perl IDEを使用してモジュールをインストールします。

これはライセンスの問題ですか?それとも、ここで何か不足していますか? Perl は開発用の無料ディストリビューションですか?

この画像は、DBD::Oracle を Strawberry Perl v5.22.0 にインストールする様子を示しています。

ここに画像の説明を入力してください

4

3 に答える 3

2

Strawberry Perl を使用しているようです。これには、使用するためのライセンスやその他の特別な手順は必要ありません。準備完了です。

写真の出力の一番上の行の 1 つは、「cpan.strawberryperl.com:80 に接続できません」です。次に、他のサイトへの接続を試みますが、同じ失敗が発生します。ネットワークの問題のようです。

于 2015-10-21T13:32:29.360 に答える
1

ActiveState は営利企業です。彼らはコミュニティ版をリリースしていますが、サポートから収益を得ています。その一部は、最新バージョンのみを「無料」で提供することを意味します。これが、エラーが発生する理由です-新しいPerlにアップグレードすると、更新できるようになります。

より広義には、技術的には、各モジュールのライセンスを個別に取得できます。FLOSS ライセンスの下で Perl コード (モジュールを含む) をリリースする必要はありません。

ただし、ActiveState コミュニティ エディションは、CPAN モジュールと同じライセンスではないことに注意してください。CPAN モジュールは「ほぼ GNU」です。ただし、ActiveState CE には追加の用語がいくつかあります。

例えば、

ソフトウェアの使用はサポートされておらず、非営利目的または非生産目的で使用するためのものです。

注意しないと本当に地雷原になるので、ライセンスを確認することを忘れないでください。

于 2015-10-21T08:45:16.967 に答える
1

ActivePerl のコミュニティ エディションは、Perl の最新バージョンのみをサポートし、古いバージョン用にビルドされた ActiveState パッケージへのアクセスは、Business および Enterprise エディションで利用できます。

Perl 5.18.4、5.20.2、または 5.22.0 をインストールすると、401 エラーは発生しません。

別の解決策: ppm の代わりに CPAN を使用して Perl モジュールをインストールします。

詳しくは、Perl のダウンロードとインストール: ActivePerl を参照してください。

于 2015-10-21T07:52:45.123 に答える