Jestem przyzwyczajony do wstępnego pobierania pakietów za pomocą Pip, a następnie kopiowania ich na maszynę docelową do wdrożenia. Z nowo wprowadzonymi Python Wheels, jestem zmuszony do "pip ... --no-use-wheel", ponieważ niektóre z pobranych pakietów są specyficzne dla platformy (rozwijam się na OSX i wdrażam w Debianie) i nie będę zainstalować na komputerze docelowym. Czy istnieje sposób na pobranie Koła na platformy docelowe (lub niezależne od platformy)?Jak pobrać wieloplatformowe koła za pośrednictwem pip?
Odpowiedz
Najprostszym sposobem osiągnięcia tego celu jest użycie przez IMO niestandardowego skryptu.
Możesz uzyskać dostęp do całego indeksu PyPI poprzez interfejs simple, jeśli pakiet, który oferuje, oferuje jedno lub więcej kół, zostaną one wymienione na tym samym adresie + /<package-name>
.
Na przykład: jeśli było zainstalować setuptools
wszystkie koła będzie notowana na: https://pypi.python.org/simple/setuptools/
w skrypcie, należy pamiętać, aby wdrożyć zalecaną priorytet tag w sposób określony przez PEP-425. Zasadniczo sprowadza się to do pobrania najbardziej specyficznej (w przeciwieństwie do najbardziej ogólnej) wersji pakietu, ponieważ zwykle przekłada się to na zalety wydajności, na przykład rozszerzenia C zastępujące czysto Pythonowe implementacje niektórych algorytmów.
Komenda pip download
ma teraz --platform
argument, który można użyć, aby określić żądaną Platforma:
pip download --platform=manylinux1_x86_64 --only-binary=:all: lxml
Dlaczego nie ma pasującej dystrybucji dla niektórych pakietów? Takich jak 'pip download --only-binary =: all: --platform = manylinux1_x86_64 tornado' . Jak mogę pobrać te pakiety? –
@SiminJie nie wszystkie pakiety mają wszystkie dystrybucje dostępne jako koła, ale jestem pewien, że opiekun pakietu zaakceptowałby wkład do adresu ;-) – sitaktif
- 1. Python 2.7, PIP: "Nieudane budowanie koła dla ..."
- 2. Czy pip pokazuje swoje podwójne koła?
- 3. Make pip download wolą pobierać źródła dystrybucji (nie koła).
- 4. Uzyskaj datę i czas instalacji pakietów zainstalowanych za pośrednictwem pip
- 5. Problemy podczas instalowania psutila (koła) jako zależności przez pip
- 6. Jak oglądać transakcje bitcoinem za pośrednictwem blockchain za pośrednictwem nodejs?
- 7. Jak zainstalować Django 1.5 za pomocą pip?
- 8. Jak odinstalować repozytorium git za pomocą pip?
- 9. Wieloplatformowe logowanie jednokrotne - od czego zacząć?
- 10. Jak znaleźć wszystkie nakładające się koła z promienia środkowego koła?
- 11. Zainstaluj pyyaml za pomocą pip/Dodaj PyYaml jako zależność pip
- 12. Jak tworzyć kręgi wokół koła za pomocą css, javascript?
- 13. Wieloplatformowe biblioteki audio dla .NET
- 14. Jak dopasowywać kreski Koła UIBezierPath
- 15. upgade wersja python za pomocą pip
- 16. Jak pobrać utworzony plik csv za pomocą Google Apps Script?
- 17. Jak pobrać plik za pomocą iskry java?
- 18. Jak mogę pobrać plik za pomocą Perla?
- 19. (jak) mogę pobrać obraz za pomocą JSoup?
- 20. Jak pobrać plik za pomocą klienta GWT?
- 21. Jak pobrać plik za pomocą podkręcenia
- 22. Jak pobrać plik PDF za pomocą Jersey?
- 23. Jak mogę pobrać plik z wiadra S3 za pomocą wget?
- 24. Jak przenieść uiview na trajektorii koła?
- 25. Jak przekazać referencję za pośrednictwem pakietu parametrów?
- 26. Jak mogę odzyskać kompozytora za pośrednictwem Ant?
- 27. Jak publikować wartości tablic za pośrednictwem curl?
- 28. Jak szybko jest SQLite za pośrednictwem Pythona
- 29. Jak iterować za pośrednictwem węzłów XDocument's
- 30. Jak podłączyć socket.io za pośrednictwem odwrotnego proxy
edytowany tytuł Twojego pytania jako Myślę 'cross-platform' (przypominający' cross-compilation' lepiej wyjaśnia, co próbujesz osiągnąć: stworzenie pakietu binarnego na platformie A dla innej platformy B (w przeciwieństwie do oryginalnego tytułu sugerującego utworzenie pakietu "uniwersalnego", który - BTW - może nie być możliwy, jeśli pakiet ma skompilowany kod w nim) – mac