2012-03-07 28 views
0

私はいくつかの調査をしましたが、ActivePerlには、CPANモジュールが正しくインストールされていない製品の以前のリリースで問題があったようです。しかし、私は5.14.xバージョンを稼働しており、何の問題もありませんでした。私が見てきたいくつかの引用符によるとActivePerlとCPANモジュールとはどのように互換性がありますか?

  1. のActivePerlは、Perlの基準分布と100%互換性があります。
  2. ActivePerlでテストされたコードは、適切な拡張機能がインストールされているPerlインストールで実行されます。

私は、最初の文はPerlインストールで得られる標準モジュールを指していると仮定します.2番目の場合、私は彼らが何を言っているのか分かりません。

いずれにしても、互換性のあるActivePerlが現在のCPANモジュールとどのように互換性があるのか​​、それとも未知のものなのかを見つける方法はありますか?私はちょうどそれと時間を過ごしたくない、より一般的なモジュールのCPANモジュールビルドの失敗を避けるために、来月のStrawberry Perlのようなものに切り替える必要がある。

ActivePerlがCPANモジュールと80%以上の互換性がある場合、私はそれを使用するのがより快適だと思いますが、これに関する情報は見つかりませんでした。

+0

ActivePerlにはモジュールをダウンロードする独自のパッケージマネージャ(ppm)があります。興味深いことに、リポジトリにはCPANモジュールのみが選択されています。それが意味するものは、しかし、議論の余地があります。 – TLP

答えて

3

私は一般的な統計はそれが役に立つと思います。一般的に、私はすべての "純粋なperl"モジュールが多かれ少なかれ動作するはずです。しかし、ある種のperlモジュールは実際には、より低いレベルのlinux/unixスタイルの共有ライブラリ(Windows用語ではdll)へのインタフェースであり、可用性はそれほど確かではありません。私の経験(Windowsでホストされているいくつかのperlアプリケーションを書いて、私のアドバイスに反する)では、ほとんどのことがうまくいく、あるいは回避するのがかなり簡単で、ActiveStateとStrawberryperlの両方が最も一般的なモジュールを適切にサポートしているようです。

+0

これは問題ありません。私が持っている以上の経験を持ついくつかの入力を得ることは、統計上十分です。 –

+0

個人的に、私はperlが非常に優れたWindowsサポートを提供していると信じています。ネイティブ(高性能Cコンパイル済み)ライブラリがサポートされていないプラットフォームではPerlは非常によく動作する "pure perl"しかし、Perl自体もかなり速いので、通常は大きな問題ではありません(あなたが行っていることに依存します)。 –

3

最初の文はモジュールをまったく参照しません。 ActivePerlは Perlに基づいてではなく、 Perlです。そのため、Perl上で動くものはActivePerl上でも動作します。

これは、ActivePerlがPerlであるため、すべてのCPAN上のモジュールがActivePerlと互換性があることを意味します。

モジュールがWindowsと互換性があるかどうかはまったく異なる質問であり、モジュール単位でのみ回答できます。


2番目のステートメントは、あなたが自然のままのActivePerl上で動作するスクリプトまたはモジュールを持っていた場合はActiveStateはコアモジュール(ではないその分布のモジュールが含まれているため、それは必ずしも自然のままのPerlで実行されない場合がありますことを指摘例えばLWP)。しかし、他のディストリビューションでスクリプトやモジュールを実行させるために必要なことは、それらのモジュールをインストールすることだけです。

関連する問題