1

私はPerlビルドの概念にまったく慣れていません。私はWindows7でPerlBUILDを作成するために働いており、単一モジュールのビルドを実行することに成功しています。次の手順に従いました。

  1. module-starterを使用して新しいモジュールを作成しました。lib / newmodule.pmがあり、tディレクトリにいくつかのテスト用.tスクリプトがあります。
  2. 次に、、、を実行perl Build.plperl Buildましperl Build testperl Build dist。したがって、最終的にはアーカイブファイルを出力として取得します。Module ::Buildinを使用しましたBuild.pl
  3. ここで、module-starterは、tディレクトリ内のtest::moreモジュールを含むサンプルコードを提供します。

したがって、このプロセスは理解しましたが、ビルドの概念については完全には明確ではありません。私はいくつかの疑問があります:

私の開発環境は次のようなものです。

  • C:\perl---Activestate perl 5.14.2
  • C:\development ---Perlコードのメインフォルダ
  • C:\development\project_name\bin\*.pllib--- PLファイル(下記 のディレクトリにあるPMファイルから関数を呼び出す単一のPLまたはPL )
  • C:\development\project_name\lib\*.pmbin--- PMファイル(ディレクトリ 内の上記のPLファイルによって呼び出される関数を持つカスタムPM )

私の質問:

  1. このディレクトリ構造は問題ありませんか?
  2. ビルドスクリプトを上記の構造のどこに保持する必要がありますか(上記の構造で問題がない場合)?
  3. 完全な開発フォルダーに対して単一のビルドスクリプトがありますか、それともPL / PMファイルごとに複数のビルドスクリプトが必要ですか?
  4. Module :: Buildは、PLファイルとPMファイルを含む構造全体のビルドを作成するのに十分ですか?
  5. ビルドコードの構造はどうあるべきですか?Module-starterが提供するものと同じである必要があります。tはいの場合、その中のディレクトリの構造はどうあるべきですか?ビルドディレクトリのあり方と、そこにあるファイルを明示的に教えてください。
4

1 に答える 1

1

これらすべての質問に答える時間はありませんが、少し時間を取って、他のモジュールのディレクトリ構造を簡単に確認することをお勧めします。https://metacpan.org/には、ディストリビューションの構造を調査できる非常に優れた「参照」機能 (特定のモジュールを見ている場合) があります。

私が直接答える 1 つの質問は、おそらくTAP::Harnessコードを記述する必要はなく、Test::More十分であるべきだということです。

PL最後に、あなたの質問を理解するのを難しくしている 1 つのこと、そしておそらくあなたがこれを知らないのは、とファイルの間に違いがあるplということです。Build.PLおそらく必要な唯一の大文字のものです。

于 2012-05-24T11:41:05.857 に答える