Question : Comment corriger le message d'erreur "Erreur :aucune cible d'installation appropriée trouvée pour le package" que j'ai reçu lors de l'installation d'un module perl à l'aide de l'installation ppm ?
Réponse : Lorsque nous sommes derrière un pare-feu, nous opterions pour "ppm via le référentiel local" pour installer les modules perl, ce qui est le moyen le plus simple. Lors de l'installation du module perl à l'aide du référentiel local ppm, nous rencontrons souvent l'erreur "Erreur :aucune cible d'installation appropriée trouvée pour le package" comme indiqué ci-dessous.
C:\DBD>ppm install DBD-DB2 Error: no suitable installation target found for package DBD-DB2 (or) $ ppm install DBD-DB2 Error: no suitable installation target found for package DBD-DB2
Dans cet article, voyons comment corriger l'"Erreur :aucune cible d'installation appropriée trouvée pour le package DBD-DB2" lors de l'installation de packages perl.
Les instructions ci-dessous expliquent comment résoudre ce problème sur la plate-forme Windows. Mais vous pouvez suivre des étapes similaires sous Linux pour résoudre le même problème.
Solution pour corriger l'erreur :aucune cible d'installation appropriée n'a été trouvée pour le package
1. Téléchargez le fichier ppd et le package
Téléchargez les fichiers PPD et packages suivants
- http://theoryx5.uwinnipeg.ca/ppms/DBD-DB2.ppd
- http://theoryx5.uwinnipeg.ca/ppms/DBD-DB2.tar.gz
Remarque : Assurez-vous de remplacer DBD-DB2 par votre nom de package correspondant.
2. Créer un répertoire pour conserver les téléchargements
Créez un répertoire DBD pour stocker le fichier ppd téléchargé.
C:\> mkdir DBD
Créez un répertoire X86 pour conserver le fichier tar téléchargé.
C:\DBD>mkdir x86
Maintenant, cela devrait ressembler à :
C:\DBD>dir Volume in drive C is SYS Volume Serial Number is 1223-34B3 Directory of C:\DBD 01/12/2009 03:33 PM . 01/12/2009 03:33 PM .. 01/12/2009 12:02 PM 391 DBD-DB2.ppd 01/12/2009 03:33 PM x86 C:\DBD> dir x86 Volume in drive C is SYS Volume Serial Number is 1223-34B3 Directory of C:\DBD 01/12/2009 03:33 PM . 01/12/2009 03:33 PM .. 01/12/2009 02:37 PM 100,859 DBD-DB2.tar.gz
3. Ouvrez le fichier ppd et modifiez le CODEBASE HREF vers le chemin de package.tar.gz
<SOFTPKG NAME="DBD-DB2" VERSION="1,7,1,0"> <TITLE>DBD-DB2</TITLE> <ABSTRACT>Perl driver for IBM DB2 Universal Database</ABSTRACT> <AUTHOR>DB2 Perl ([email protected])</AUTHOR> <IMPLEMENTATION> <OS NAME="MSWin32" /> <ARCHITECTURE NAME="MSWin32-x86-multi-thread-5.8" /> <CODEBASE HREF="x86\DBD-DB2.tar.gz" /> </IMPLEMENTATION> </SOFTPKG>
Remarque : CODEBASE HREF doit avoir le chemin de l'archive tar depuis le répertoire où se trouve le fichier ppd.
4. Ajoutez le référentiel local à l'aide de ppm repo add
C:\>ppm repo add repositoryname Fullpath C:\>ppm repo add Local C:\DBD
5. Vérifiez le référentiel ajouté à l'aide du référentiel ppm
C:\DBD>ppm repo Repositories [1] Local [ ] ActiveState Package Repository
6. Problème résolu :Maintenant, l'installation de ppm se passera bien
C:\DBD>ppm install DBD-DB2.ppd ======================= Install 'DBD-DB2' version 1.7.1 in ActivePerl 5.8.0.806 ======================= Installing C:\Perl\site\lib\auto\DBD\DB2\DB2.bs Installing C:\Perl\site\lib\auto\DBD\DB2\DB2.dll Installing C:\Perl\site\lib\auto\DBD\DB2\Constants\Constants.bs Installing C:\Perl\site\lib\auto\DBD\DB2\Constants\Constants.dll Installing C:\Perl\site\lib\auto\DBD\DB2\Constants\Constants.dll Installing C:\Perl\html\site\lib\DBD\DB2.html Installing C:\Perl\html\site\lib\Bundle\DBD\DB2.html Installing C:\Perl\site\lib\DBD\DB2.pm Installing C:\Perl\site\lib\DBD\DB2.pod Installing C:\Perl\site\lib\DBD\DB2\Constants.pm Installing C:\Perl\site\lib\Bundle\DBD\DB2.pl Installing C:\Perl\site\lib\auto\DBD\DB2\Constants\autosplit.ix Successfully installed DBD-DB2 version 1.7.1 in ActivePerl 5.8.0.806
Même après avoir suivi correctement toutes les étapes ci-dessus, si vous obtenez toujours la même erreur "Erreur :aucune cible d'installation appropriée trouvée pour le package". Vérifiez la version du module que vous essayez d'installer et la version de perl. Pour voir les détails (version) du module que vous allez installer, utilisez ppm desc c'est-à-dire describe.
C:\DBD>ppm desc DBD-DB2 ======================== Name : DBD-DB2 Version : 1.7.1 Author: DB2 Perl >[email protected]> Title: DBD-DB2 Abstract: Perl driver for IBM DB2 Universal Database Location: local Available Platforms: 1. MSWin32-x86-multi-thread-5.8
Utilisez perl -v pour voir la version de perl.
C:\DBD>perl -v This is perl, V5.8.0 built for MSWin32-x86-multi-thread
La version du module que vous essayez d'installer doit avoir une version pour votre version de perl. Dans l'exemple ci-dessus dans la description du module montre que "Plates-formes disponibles :MSWin32-x86-multi-thread-5.8" indique qu'il est conçu pour 5.8. Si ce numéro de version ne correspond pas, vous obtiendrez cette erreur, vous devez alors télécharger la bonne version du module.