Comprendre l'erreur « environnement géré en externe »
Lors de l'utilisation de pip sur des systèmes Linux avec des dérivés Debian ou Ubuntu, vous pouvez rencontrer le Erreur « environnement géré en externe ». Cette erreur se produit car le système d'exploitation impose l'utilisation de packages gérés par le système pour installer des applications et des bibliothèques Python.
Signification de l'erreur
L'erreur indique que le système a détecté une tentative d'installation d'un paquet Python qui ne fait pas partie de l'écosystème des paquets Debian. Les distributions basées sur Debian gèrent leurs packages logiciels de manière centralisée, garantissant cohérence et stabilité.
Comment éviter l'erreur
La solution recommandée consiste à utiliser des environnements virtuels Python pour isoler votre packages installés à partir des packages globaux du système. Cela évite les conflits potentiels et les pannes du système.
Création d'environnements virtuels
Pour créer un environnement virtuel à l'aide de venv :
python3 -m venv my-virtual-env
Ensuite, activez le environnement :
source my-virtual-env/bin/activate
Dans l'environnement activé, vous pouvez installer des bibliothèques et des applications Python sans rencontrer le erreur.
Outils tiers
Vous pouvez également utiliser des outils tiers comme pipx pour gérer les applications Python dans des environnements virtuels. Installez pipx :
apt install pipx
Ensuite, installez les applications :
pipx install some-python-application
Installation à l'échelle du système si nécessaire
Dans de rares cas, cela peut être nécessaire d'installer des packages à l'échelle du système. Cependant, cela ne doit être fait qu'en dernier recours et avec prudence.
Utilisation de --break-system-packages
L'indicateur --break-system-packages dans pip vous permet de remplacer l'erreur. Il doit être utilisé avec une extrême prudence, car cela pourrait casser vos packages système.
Modifier pip.conf
Une autre option consiste à ajouter les lignes suivantes à ~/. config/pip/pip.conf :
[global] break-system-packages = true
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!