Python easy_install
sprawia , że instalowanie nowych pakietów jest niezwykle wygodne. Jednak, o ile wiem, nie implementuje innych typowych funkcji menedżera zależności - wyświetlając i usuwając zainstalowane pakiety.
Jaki jest najlepszy sposób na sprawdzenie, co jest zainstalowane i jaki jest preferowany sposób usuwania zainstalowanych pakietów? Czy są jakieś pliki, które należy zaktualizować, jeśli ręcznie usunę pakiety (np. Przez rm /usr/local/lib/python2.6/dist-packages/my_installed_pkg.egg
lub podobne)?
python
packages
setuptools
easy-install
ire_and_curses
źródło
źródło
easy_uninstall
, ani b: zawracał sobie głowę wspomnieniem, jak można to zrobić w--help
- oszałamia mój umysł / _ denerwuje moją duszę / zasmuca moje serce .Odpowiedzi:
pip , alternatywa dla setuptools / easy_install, udostępnia polecenie „odinstaluj”.
Zainstaluj pip zgodnie z instrukcją instalacji :
Następnie możesz użyć
pip uninstall
do usunięcia zainstalowanych pakietóweasy_install
źródło
Aby odinstalować
.egg
, potrzebujeszrm -rf
jajka (może to być katalog) i usuń z niego pasującą linięsite-packages/easy-install.pth
źródło
pip
menedżer pakietów zawiera funkcję odinstalowywania.data_files
iscripts
(i ewentualnie inne kategorie plików) w systemie. JajkoEGG-INFO/SOURCES.txt
zawiera listę wszystkichpackage
plikówsources
, ale nie takichdata_files
, które można zainstalować w dowolnym dowolnym katalogu w systemie ...Najpierw musisz uruchomić to polecenie:
Usuwa wszystkie zależności pakietu.
Następnie usuń plik jaja tego pakietu:
źródło
-m
nie jest właściwą komendą easy_install do usuwania czegokolwiek, o ile mi wiadomo, ale ta odpowiedź podaje kluczową lokalizację pakietów easy_install, których nie dają inne odpowiedzi.rm -rf /usr/local/lib/python*
wydaje mi się, że przed instalacją pip jest to drogaWszystkie informacje znajdują się w innych odpowiedziach, ale żadna z nich nie streszcza obu twoich próśb ani nie sprawia, że sprawy stają się niepotrzebnie złożone:
Do potrzeb związanych z usunięciem użyj:
(zainstaluj za pomocą
easy_install pip
)Aby wyświetlić listę zainstalowanych pakietów, należy użyć:
Lub:
co może wygenerować więcej szczegółów pakietu.
(Zainstaluj przez
easy_install yolk
lubpip install yolk
)źródło
yolk -l
widzę, że mam zduplikowane pakiety, takie jak „scipy -0.11.0 -nieaktywny rozwój” i „scipy -0.14.0 ... aktywny rozwój”. Jak mogę odinstalować te nieaktywne pakiety programistyczne?Istnieje kilka źródeł w sieci sugerujących włamanie poprzez ponowną instalację pakietu z opcją -m, a następnie po prostu usunięcie pliku .egg z lib / i plików binarnych z bin /. Dyskusję na temat tego problemu z setuptools można również znaleźć w narzędziu do śledzenia błędów w Pythonie jako problem z 21 setuptools .
Edycja: Dodano link do narzędzia do śledzenia błędów w Pythonie.
źródło
Jeśli problem jest dla ciebie wystarczająco poważny, możesz rozważyć virtualenv . Pozwala ci stworzyć środowisko, które obuduje biblioteki Pythona. Pakiety instaluje się tam zamiast w globalnym katalogu pakietów witryny. Wszystkie skrypty uruchamiane w tym środowisku mają dostęp do tych pakietów (i opcjonalnie również do globalnych). Używam tego bardzo często podczas oceny pakietów, których nie jestem pewien, czy chcę / muszę zainstalować globalnie. Jeśli zdecydujesz, że nie potrzebujesz pakietu, łatwo jest zdmuchnąć to wirtualne środowisko. Jest dość łatwy w użyciu. Utwórz nową env:
virtual_envt instaluje dla Ciebie setuptools w nowym środowisku, dzięki czemu możesz:
Możesz nawet tworzyć własne skrypty boostrap, które konfigurują nowe środowisko. Tak więc, za pomocą jednego polecenia, możesz utworzyć nową wirtualną env z, powiedzmy, python 2.6, psycopg2 i django zainstalowanymi domyślnie (jeśli chcesz, możesz zainstalować wersję Pythona specyficzną dla env).
źródło
Oficjalne (?) Instrukcje: http://peak.telecommunity.com/DevCenter/EasyInstall#uninstalling-packages
źródło
próbować
następnie
źródło
$ easy_install -mxN PACKAGE
następnie$ rm -rf .../lib/python2.X/site-packages/PACKAGE.egg
(Patrz peak.telecommunity.com/DevCenter/... )Aby wyświetlić listę zainstalowanych pakietów Pythona, możesz użyć
yolk -l
.easy_install yolk
Najpierw musisz jednak użyć .źródło
Znalazłem się w tym pytaniu, próbując odinstalować wiele losowych pakietów Pythona zainstalowanych z czasem.
Korzystając z informacji z tego wątku, wymyśliłem:
Został
package_list
wyczyszczony (awk) zpip freeze
poziomu virtualenv.Aby usunąć prawie wszystkie pakiety Pythona:
źródło
<package_list xargs -n1 sudo pip uninstall -y
unika UUOC!Ten sam problem napotkałem na moim MacOS X Leopard 10.6.blah.
Rozwiązaniem jest upewnienie się, że dzwonisz do Pythona MacPorts:
Mam nadzieję że to pomoże.
źródło
Dla mnie tylko usunięcie tego pliku: easy-install.pth działało, reszta pip install django == 1.3.7
źródło
To zadziałało dla mnie. Jest podobny do poprzednich odpowiedzi, ale ścieżka do pakietów jest inna.
Plaform: MacOS High Sierra wersja 10.13.3
źródło
error: No urls, filenames, or requirements specified (see --help)