Python easy_install
rend l'installation de nouveaux packages extrêmement pratique. Cependant, pour autant que je sache, il n'implémente pas les autres fonctionnalités communes d'un gestionnaire de dépendances - répertoriant et supprimant les packages installés.
Quelle est la meilleure façon de savoir ce qui est installé et quelle est la meilleure façon de supprimer les packages installés? Y a-t-il des fichiers qui doivent être mis à jour si je supprime des packages manuellement (par exemple par rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg
ou similaire)?
python
packages
setuptools
easy-install
ire_and_curses
la source
la source
easy_uninstall
, ni b: se donne la peine de mentionner comment on peut le faire dans le--help
- embrouille mon esprit / _folie mon âme / attriste mon cœur .Réponses:
pip , une alternative à setuptools / easy_install, fournit une commande "désinstaller".
Installez pip conformément aux instructions d'installation :
Ensuite, vous pouvez utiliser
pip uninstall
pour supprimer les packages installés aveceasy_install
la source
Pour désinstaller un dont
.egg
vous avez besoin surrm -rf
l'oeuf (il peut s'agir d'un répertoire) et supprimez la ligne correspondante desite-packages/easy-install.pth
la source
pip
gestionnaire de packages inclut une fonction de désinstallation.data_files
etscripts
(et éventuellement d'autres catégories de fichiers) sur le système. L'œufEGG-INFO/SOURCES.txt
contient une liste de tous lespackage
fichiers etsources
, mais pasdata_files
, qui peuvent être installés dans n'importe quel répertoire arbitraire de votre système ...Vous devez d'abord exécuter cette commande:
Il supprime toutes les dépendances du package.
Ensuite, supprimez le fichier d'oeuf de ce paquet:
la source
-m
n'est pas la commande easy_install appropriée pour supprimer quoi que ce soit pour autant que je sache, mais cette réponse donne l'emplacement crucial des packages easy_install que les autres réponses ne font pas. unrm -rf /usr/local/lib/python*
avant d'installer pip est la voie à suivre, il me sembleToutes les informations se trouvent dans les autres réponses, mais aucune ne résume à la fois vos demandes ou ne semble rendre les choses inutilement complexes:
Pour vos besoins de suppression, utilisez:
(installez en utilisant
easy_install pip
)Pour vos besoins de «liste des packages installés», utilisez:
Ou:
qui peut afficher plus de détails sur le package.
(Installer via
easy_install yolk
oupip install yolk
)la source
yolk -l
, je constate que j'ai des packages en double tels que "scipy -0.11.0 -non-active development" et "scipy -0.14.0 ... -active development". Comment puis-je désinstaller ces packages de développement non actifs?Il existe plusieurs sources sur le net suggérant un piratage en réinstallant le paquet avec l'option -m puis en supprimant simplement le fichier .egg dans lib / et les binaires dans bin /. En outre, une discussion sur ce problème setuptools peut être trouvée sur le suivi des bogues python en tant que problème 21 de setuptools .
Edit: Ajout du lien vers le bugtracker python.
la source
Si le problème vous dérange suffisamment, vous pouvez envisager virtualenv . Il vous permet de créer un environnement qui encapsule les bibliothèques python. Vous y installez des packages plutôt que dans le répertoire global des packages de site. Tous les scripts que vous exécutez dans cet environnement ont accès à ces packages (et éventuellement à vos packages globaux). Je l'utilise beaucoup lors de l'évaluation de packages que je ne suis pas sûr de vouloir / devoir installer globalement. Si vous décidez que vous n'avez pas besoin du package, il est assez facile de simplement éliminer cet environnement virtuel. C'est assez simple à utiliser. Faites un nouvel env:
virtual_envt installe setuptools pour vous dans le nouvel environnement, vous pouvez donc faire:
Vous pouvez même créer vos propres scripts boostrap qui configurent votre nouvel environnement. Ainsi, avec une seule commande, vous pouvez créer un nouvel env virtuel avec, disons, python 2.6, psycopg2 et django installés par défaut (vous pouvez installer une version de python spécifique à env si vous le souhaitez).
la source
Instructions officielles (?): Http://peak.telecommunity.com/DevCenter/EasyInstall#uninstalling-packages
la source
essayer
puis
la source
$ easy_install -mxN PACKAGE
puis$ rm -rf .../lib/python2.X/site-packages/PACKAGE.egg
(Voir peak.telecommunity.com/DevCenter/… )Pour répertorier les packages Python installés, vous pouvez utiliser
yolk -l
. Vous devrez cependant utiliser d'easy_install yolk
abord.la source
Je suis tombé sur cette question, tout en essayant de désinstaller les nombreux packages Python aléatoires installés au fil du temps.
En utilisant les informations de ce fil, voici ce que j'ai trouvé:
Le
package_list
est nettoyé (awk) d'unpip freeze
dans un virtualenv.Pour supprimer presque tous les packages Python:
la source
<package_list xargs -n1 sudo pip uninstall -y
évite une UUOC!J'ai rencontré le même problème sur mon MacOS X Leopard 10.6.blah.
La solution est de vous assurer que vous appelez le MacPorts Python:
J'espère que cela t'aides.
la source
Pour moi, supprimer uniquement ce fichier: easy-install.pth a fonctionné, reste pip install django == 1.3.7
la source
Cela a fonctionné pour moi. C'est similaire aux réponses précédentes mais le chemin vers les packages est différent.
Plateforme: MacOS High Sierra version 10.13.3
la source
error: No urls, filenames, or requirements specified (see --help)