it-swarm-eu.dev

Jak ręcznie zainstalować moduł pypi bez pip/easy_install?

Chcę użyć modułu gntp do wyświetlania powiadomień przypominających toster dla oprogramowania C/C++. Chcę spakować wszystkie zależności, aby soft był samowykonywalny na innym komputerze.

Moduł gntp jest dostępny tylko za pośrednictwem instalatora pip, którego nie można użyć (komputer, na którym działa soft, nie ma połączenia z Internetem): jak mogę go zainstalować ze źródeł?

Wolałbym nie zmuszać użytkownika do instalacji easy_install/pip i ręcznie dodać ścieżkę pip do% PATH.

PS: Używam Pythona 2.7 na komputerze z systemem Windows.

55
lucasg
  1. Pobierz pakiet
  2. rozpakuj go, jeśli jest spakowany
  3. cd do katalogu zawierającego setup.py
  4. Jeśli istnieją jakieś instrukcje instalacji zawarte w niniejszej dokumentacji, przeczytaj i stosuj się do instrukcji .__ INNE
  5. wpisz python setup.py install

Możesz potrzebować uprawnień administratora w kroku 5. To, co tutaj robisz, zależy od systemu operacyjnego. Na przykład w Ubuntu powiesz Sudo python setup.py install 

EDIT - dzięki kwatford (zobacz pierwszy komentarz)

Aby pominąć potrzebę uprawnień administratora w kroku 5 powyżej, możesz skorzystać z flagi --user. W ten sposób możesz zainstalować pakiet tylko dla bieżącego użytkownika.

Doktorzy mówią:

Pliki zostaną zainstalowane w podkatalogach site.USER_BASE (zapisanych poniżej jako userbase). Ten schemat instaluje czyste moduły Pythona i moduły rozszerzeń w tej samej lokalizacji (znanej również jako site.USER_SITE). Oto wartości dla systemu UNIX, w tym Mac OS X:

Więcej szczegółów można znaleźć tutaj: http://docs.python.org/2.7/install/index.html

91
Sheena

Aby dalej wyjaśnić odpowiedź Sheeny , musiałem mieć narzędzia konfiguracyjne zainstalowany jako zależność innego narzędzia, np more-itertools .

Ściągnij

Kliknij Clone or download przycisk i wybierz metodę. Umieściłem je w katalogu dev/py/libs w moim katalogu domowym użytkownika. Nie ma znaczenia, gdzie są zapisywane, ponieważ nie zostaną tam zainstalowane.

Instalowanie narzędzi instalacyjnych

Musisz uruchomić następujące polecenie w katalogu setup-tools .

python bootstrap.py
python setup.py install

Instalacja ogólnych zależności

Teraz możesz przejść do katalogu more-itertools i zainstalować go normalnie.

  1. Pobierz pakiet
  2. Rozpakuj go, jeśli jest to archiwum
  3. Przejdź (cd ...) do katalogu zawierającego setup.py
  4. Jeśli w dokumentacji znajdują się jakieś instrukcje instalacji, przeczytaj i postępuj zgodnie z instrukcjami INNYMI
  5. Wpisz: python setup.py install
2
Mr. Polywhirl

Mimo że Sheena's answer spełnia swoje zadanie, pip nie kończy się na tym.

Z odpowiedzi Sheeny:

  1. Pobierz pakiet
  2. rozpakuj go, jeśli jest spakowany
  3. cd do katalogu zawierającego setup.py
  4. Jeśli istnieją instrukcje instalacji zawarte w dokumentacji tutaj zawartej, należy przeczytać instrukcje INNE
  5. wpisz python setup.py install

Na końcu skończysz z plikiem .Egg w site-packages. Jako użytkownik nie powinno ci to przeszkadzać. Możesz import i uninstall pakiet normalnie. Jeśli jednak chcesz to zrobić pip, możesz kontynuować następujące kroki.

W katalogu site-packages

  1. unzip <.Egg file>
  2. zmień nazwę katalogu Egg-INFO na <pkg>-<version>.dist-info
  3. Teraz zobaczysz osobny katalog z nazwą pakietu, <pkg-directory>
  4. find <pkg-directory> > <pkg>-<version>.dist-info/RECORD
  5. find <pkg>-<version>.dist-info >> <pkg>-<version>.dist-info/RECORD. >> ma zapobiegać nadpisywaniu.

Teraz, patrząc na katalog site-packages, nigdy nie zauważysz, że został zainstalowany bez pip. Aby uninstall, po prostu wykonaj zwykłe pip uninstall <pkg>.

0
John Strood