site og site \ lib katalog placeringer for Perl på Windows

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg er en PHP programmør og har lige fået til opgave at arbejde på nogle Perls ting - jeg skal installere moduler.


Men kan nogen forklare mig forskellen mellem 'lib' og 'site \ lib' når installeringsmoduler. Ved hvilket kriterium er et modul installeret i en i stedet for den anden?


Er dette virkelig relevant på Windows (undskyld aldrig arbejdet på UNIX).


Jeg kigger på at bruge jordbær Perl 5.12.2.0.

Bedste reference


lib/ indeholder de moduler, der følger med Perl. site/lib/ indeholder det modul, du har installeret dig selv. Perl selv gør ingen forskel mellem de to.


Hvis site/lib/ ikke er tom for en ny installation, skyldes det sandsynligvis, at jordbær indeholder moduler i deres distro, der normalt ikke er pakket med Perl. (Jeg ved ActivePerl gør.)

Andre referencer 1


Så ofte er det relevant. Nogle gange er du nødt til at indstille env var PERL5LIB til 'site \ lib; lib', nogle gange er det på den anden side.


Eksempel (gyldigt fra april 2011):


Perl 5.12 inkluderer Prøv :: Lille 0,6.


Hvis du skulle installere Test :: Fatal, vil den prøve :: Tiny 0.7+.


Så du skal opdatere den fra CPAN: så får du prøve: Tiny 0,09


men 0,09 vil kun blive indlæst, når du fortæller perl at kigge på webstedet \ lib først.