/ / Comparaison de make et nmake pour l’installation de modules Perl - Windows, Linux, Perl, Makefile, nmake

Comparaison de make et nmake pour l’installation de modules perl - windows, linux, perl, makefile, nmake

L'installation du module varie par rapport aux systèmes d'exploitation Windows et Linux / Unix.

En Win32, nous devons utiliser un programme appelé nmake et après on suit

 1. C:> perl Makefile.PL
2. C:> nmake
3. C:> nmake test
4. C:> nmake install

et sous Linux nous suivons

 1. $ perl Makefile.PL
2. $ make
3. $ make test
4. $ make install

le processus d'installation serait identique pour les deux systèmes d'exploitation, la seule différence serait dans le mot clé utilisé faire et nmake. Quelqu'un pourrait-il me dire en quoi consiste la lettre n représente et quelle est sa spécification dans Windows.

Réponses:

2 pour la réponse № 1

De Wikipédia,

Microsoft nmake, généralement disponible sous Windows. C'est assez basique dans qu'il ne propose qu'un sous-ensemble des fonctionnalités des deux autres versions de marque (BSD et GNU). Microsoft "s nmake ne doit pas être confondu avec nmake de AT & T et Bell Labs pour Unix.

Microsoft nmake est détaillé ici et GNU make est détaillé ici


-1 pour la réponse № 2

En fait, l’installation du module se fait généralement comme suit sous Windows et Linux:

cpan Module::Name

Sur votre question.

Perl s'attend à ce que la suite de compilateur utilisée pour construire Perl soit utilisée pour construire le module.

Il existe deux chaînes d'outils principales sous Windows. Il y a celui fourni par Microsoft et il y a un port de GNU.

  • L'outil de création fourni par Microsoft s'appelle nmake.
  • L’outil make fourni par le port MinGW des outils GNU est nommé dmake.

Alors,

  • Si votre Perl a été construit en utilisant les outils de MS (par exemple, les versions de Perl par ActiveState sous Windows), nmake.
  • Si votre Perl a été construit en utilisant les outils de GNU (par exemple, les versions de Perl par Strawberry), vous devez dmake.

Ce qui nous ramène à cpan Module::Name.

cpan demandera à Perl quels outils ont été utilisés pour le construire et utilisera ces outils.

Normalement. Ce n'est pas le cas sous Windows. cpan est en réalité beaucoup plus souple sous Windows. cpan examinera d'abord la chaîne d'outils utilisée pour construire Perl. Si ce n'est pas trouvé, cpan installez la chaîne d’outils GNU pour vous et trompez temporairement perl en croyant qu'il a été construit en utilisant la chaîne d'outils de GNU.

Cela signifie que vous courez cpan Module::Name ça devrait marcher n'importe quoi sur ActivePerl. (Et il y a aussi ppm install Module::Name, même si je courais ppm sans aucun argument d'abord pour ajouter des référentiels (par exemple des pots de vin))