92 votes

Comment désinstaller un paquet Python installé à l'aide de distutils?

Pouvez-vous simplement supprimer le répertoire de votre installation Python, ou y a-t-il des fichiers en attente que vous devez supprimer?

45voto

cdleary Points 18869

Il varie en fonction des options que vous passez à l' install et le contenu de la distutils fichiers de configuration sur le système/dans le package. Je ne crois pas que tous les fichiers sont modifiés en dehors des répertoires spécifiés dans ces moyens.

Notamment, distutils ne dispose pas d'une commande de désinstallation en ce moment.

Il est également à noter que la suppression d'un paquet/œuf peut causer des problèmes de dépendance -- les services publics comme l' easy_install tenter d'atténuer ces problèmes.

19voto

Ali Afshar Points 22836

Les trois choses à installer que vous devrez supprimer sont:

  1. Forfaits / modules
  2. Les scripts
  3. Fichiers de données

Maintenant, sur mon système Linux, ils résident dans:

  1. /usr/lib/python2.5/site-packages
  2. / usr / bin
  3. / usr / share

Mais sur un système Windows, ils sont plus susceptibles d'être entièrement dans le répertoire de distribution Python. Je n'ai aucune idée de OSX, sauf qu'il est plus facile de suivre le modèle Linux.

14voto

maximk Points 61

Un autre hack basé sur l'horodatage:

  1. Créer une ancre: touch /tmp/ts
  2. Réinstallez le package à supprimer: python setup.py install --prefix=<PREFIX>
  3. Supprimez les fichiers plus récents que le fichier d'ancrage: find <PREFIX> -cnewer /tmp/ts | xargs rm -r

9voto

Salim Fadhley Points 4296

Oui, il est sûr de simplement supprimer tout ce qui distutils installé. Qui va installés pour les dossiers ou .oeuf de fichiers. Naturellement, tout ce qui dépend de ce code ne fonctionnera plus.

Si vous voulez faire fonctionner à nouveau, il suffit de ré-installer.

Par ailleurs, si vous utilisez distutils également envisager l'utilisation de la multi-fonctionnalité de version. Il vous permet d'avoir plusieurs versions d'un paquet installé. Cela signifie que vous n'avez pas besoin de supprimer une ancienne version d'un package tout simplement si vous souhaitez installer une version plus récente.

4voto

Jason Baker Points 56682

Si c'est pour les tests et/ou à des fins de développement, setuptools a un développer de commande qui met à jour chaque fois que vous apportez une modification (de sorte que vous n'avez pas à désinstaller et réinstaller à chaque fois que vous apportez une modification). Et vous pouvez désinstaller le package à l'aide de cette commande.

Si vous ne l'utiliser, tout ce que vous déclarer en tant que script sera laissé derrière elle, comme une longue file.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X