Comment ajouter des modules Perl en utilisant CPAN sur El Capitan

2

Lorsque OS X El Capitan est arrivé, la possibilité d'utiliser CPAN pour ajouter ou mettre à jour des modules Perl a disparu. Il semble que les scripts veulent soit modifier /usr/bin, qui est maintenant interdit, ou ils essaient d'utiliser des fichiers binaires de /sw/usr/bin qui ne sont pas là et sont dans /usr/bin au lieu. Perl lui-même ne peut pas être installé car il veut s’installer dans /usr/bin au lieu de /usr/local/bin.

Où sont les scripts qui utilisent ces /sw/usr/bin? Il semble qu'ils devraient utiliser un PATH pour localiser les fichiers binaires au lieu de les coder en dur.

Est-ce que quelqu'un sait comment réparer Perl et CPAN sur El Capitan? Des instructions détaillées seraient utiles.

John Wooten
la source

Réponses:

2

Je n'ai eu aucun problème en ajoutant de nouveaux paquets CPAN au perl livré par OSX El Capitan. Par défaut, ils sont construits dans votre répertoire personnel et installés dans /Library/Perl/5.18/ qui est accessible en écriture avec les privilèges root.

le /sw/ préfixe que vous mentionnez semble provenir d'un Mouchard installation. Si vous avez déjà installé un autre Perl à partir de Fink, vous devrez probablement mettre à jour votre installation de Fink et mettre à jour le paquet Perl qui en provient.

Si vous êtes certain de ne pas utiliser Fink et que vous souhaitez utiliser une autre version de Perl à côté de celle fournie avec OS X, vous pouvez utiliser celle de homebrew . Il va installer dans /usr/local et sera disponible pour que vous puissiez l’appeler, mais tous les programmes perl OSX continueront à utiliser la version perl fournie avec OSX. Attention, Fink et Homebrew ne jouent pas bien l'un avec l'autre, il vaut mieux s'en tenir à un seul.

Enfin, si vous souhaitez exécuter plusieurs versions de Perl et pouvoir basculer entre celles-ci, je vous suggère de jeter un coup d'œil à perlbrew .

Quelques autres commandes utiles pour déboguer votre installation Perl:

  • which perl vous dira où est installé votre exec actuel
  • perl -V vous donnera plus d'informations sur la version de Perl, sa date et ses options compilées et les chemins d'inclusion dans lesquels les modules sont recherchés
  • perldoc perllocal vous listera les modules perl que vous avez installés localement avec CPAN

À propos de CPAN, comme vous l'avez remarqué, une mise à niveau régulière de CPAN échoue. Il existe cependant une solution en indiquant à CPAN de s’installer en /usr/local/bin/. J'ai documenté cette mise à niveau de CPAN dans cette réponse .

Tonin
la source