Comment corriger l’erreur pip « externally-managed-environment » sous Linux
Si vous travaillez fréquemment avec Python et que vous êtes récemment passé à Ubuntu 23.04 ou Fedora version 38, il y a de fortes chances que vous ayez rencontré l’erreur « externally-managed-environment » lors de l’installation de paquets avec le gestionnaire de paquets Python, pip.
Cela peut être frustrant et assez surprenant car cette erreur n’apparaît pas dans les anciennes versions d’Ubuntu, de Fedora et d’autres distributions. Découvrons ce qui cause exactement cette erreur et comment vous pouvez la corriger rapidement.
Pourquoi l’erreur « externally-managed-environment » se produit-elle ?
Les dernières versions de toutes les distributions Linux adoptent les normes définies dans le PEP-668. Ces changements garantissent que les paquets pip ne seront pas installés dans un contexte global par défaut.
Cette mesure a été mise en œuvre afin d’éviter tout conflit entre le gestionnaire de paquets de la distribution et les outils de gestion de paquets Python. Vous pouvez en apprendre plus sur les détails dans le document documentation officielle PEP-668. Si vous souhaitez revenir sur ce mécanisme ou l’ignorer, vous pouvez adopter trois approches.
1. Supprimer le fichier « EXTERNALLY-MANAGED ».
Il s’agit de la solution la plus simple pour corriger l’erreur « externally-managed ». Tout ce que vous avez à faire est de naviguer vers /usr/lib/python3.xx et de supprimer le fichier GÉRÉE DE MANIÈRE EXTERNE dans le répertoire. Voici les commandes pour ce faire :
C’est tout ce que vous avez à faire pour corriger l’erreur. Si vous choisissez de restaurer ce mécanisme, créez à nouveau le même fichier à l’aide de la commande touch :
Vous devriez maintenant être en mesure d’installer des paquets de manière transparente avec pip ou pip3.
2. Utiliser des environnements virtuels pour installer des paquets pip
Une autre approche que vous pouvez adopter consiste à utiliser des environnements virtuels pour votre projet Python. Les environnements virtuels sont un excellent moyen d’isoler les paquets spécifiques à un programme du système d’exploitation et vous permettent également d’organiser proprement votre projet.
Voici comment créer un environnement virtuel et installer des paquets avec pip :
- Tout d’abord, créez l’environnement virtuel avec :
- Sourcez le fichier activate à l’intérieur du répertoire bin à l’aide de la commande source :
Votre invite de commande devrait être mise à jour avec le nom de l’environnement virtuel. Vous pouvez maintenant installer tous les paquets Python que vous souhaitez.
Comme vous pouvez le voir, le fichier openai Python n’a pas pu être installé au début, mais après avoir créé et basculé dans un environnement virtuel, il est installé sans problème.
3. Utiliser pipx pour installer les paquets Python
pipx est un utilitaire permettant d’installer des paquets Python dans des environnements virtuels et isolés. Il automatise des étapes telles que la création d’environnements virtuels pour chaque paquet et la création de liens symboliques vers les paquets dans l’environnement virtuel. local/bin afin de pouvoir appeler chaque paquet depuis le shell à tout moment.
L’utilisation de pipx pour installer des paquets vous permet d’éviter l’erreur « externally-managed-environment » car il installe des paquets dans des environnements virtuels. Pour utiliser pipx, commencez par l’installer avec le gestionnaire de paquets par défaut de votre distribution.
Sur les dérivés d’Ubuntu/Debian :
Sur les systèmes basés sur Arch :
Sur Fedora/CentOS/RHEL :
Une fois que vous avez installé pipx, utilisez-le comme vous le feriez avec pip pour installer des paquets. Voici un exemple de commande :
Pour en savoir plus sur pipx, vous pouvez consulter sa page de manuel à l’aide de la commande man.
Vous savez maintenant comment corriger l’erreur « externally-managed » (géré de manière externe)
Après avoir corrigé l’erreur « externally-managed-environment », vous devriez pouvoir continuer à travailler sur votre projet ou à pratiquer la programmation générale en Python. Si vous vous concentrez sur ce dernier point, vous pouvez consulter les différentes méthodes ludiques d’apprentissage de la programmation qui vous aideront à apprendre Python, ou n’importe quel langage, beaucoup plus rapidement d’une manière pratique et gratifiante.
Améliorez votre QI technologique grâce à nos lettres d’information gratuites
En vous abonnant, vous acceptez notre politique de confidentialité et pouvez recevoir des communications occasionnelles ; vous pouvez vous désabonner à tout moment.