Napisałem pakiet z zależnością zależności od psutil (my-package
w zależności od third-party-package
, która zależy od psutil
).
Ponieważ ma działać na serwerze bez połączenia i bez gcc
, przygotowałem lokalnie lokację z psutil
i pip install my-package --download
, a następnie wysłałem wszystko na serwer.Problemy podczas instalowania psutila (koła) jako zależności przez pip
Teraz wszystko jest gotowe na serwerze, ale z jakiegoś powodu, po uruchomieniu instalacji, pip
odmawia instalacji psutil
. Zauważ, że serwer to czerwony kapelusz 7.2 uruchomiony pip 7.1.0, virtualenv 1.10.1 i python 2.7.5 (i nie mogę zmienić wersji czegokolwiek).
$ pip install /tmp/python_packages/my-package-1.4.zip --no-index
--find-links /tmp/python_packages/ --use-wheel
Ignoring indexes: https://pypi.python.org/simple/
# blablabla, everything goes fine, then
Downloading/unpacking psutil (from third-party-package>=0.9->my-package==1.4)
Could not find any downloads that satisfy the requirement psutil
(from third-party-package>=0.9->my-package==1.4)
Cleaning up...
No distributions at all found for psutil (from third-party-package>=0.9->my-package==1.4)
Storing complete log in /home/anto/.pip/pip.log
Oto co pip.log
mówi:
Downloading/unpacking psutil (from third-party-package>=0.9->my-package==1.4)
URLs to search for versions for psutil (from third-party-package>=0.9->my-package==1.4):
# bla
Skipping file:///tmp/python_packages/psutil-4.2.0-cp27-cp27mu-linux_x86_64.whl
because it is not compatible with this Python
# bla
Could not find any downloads that satisfy the requirement psutil (from third-
party-package>=0.9->my-package==1.4)
Cleaning up...
Więc "nie jest kompatybilny z tym Pythona", ok. Ale tutaj jest naprawdę dziwna część: jeśli zainstaluję psutil
bez niczego, a potem resztę, wszystko pójdzie dobrze.
$ pip install /tmp/python_packages/psutil-4.2.0-cp27-cp27mu-linux_x86_64.whl
Unpacking /tmp/python_packages/psutil-4.2.0-cp27-cp27mu-linux_x86_64.whl
Installing collected packages: psutil
Successfully installed psutil
Cleaning up...
$ pip freeze -l
psutil==4.2.0
$ pip install /tmp/python_packages/my-package-1.4.zip --no-index
--find-links /tmp/python_packages/ --use-wheel
# blablabla
Successfully installed my-package third-party-package
Cleaning up...
Czego mi brakuje? Jakaś wskazówka?
jaki jest pakiet osób trzecich? – second
To pakiet opracowany przez kogoś z mojej firmy. Plik setup.py zawiera 'install_requires = ['psutil']'; nic fajnego. – Anto
Nie jesteś pewien, czy masz wiele wersji python, ale w pip.log sprawdź, czy w obu przypadkach używany python jest poprawną wersją? (http://stackoverflow.com/questions/29879504/python-version-incorrectly-identified) Nie jestem przekonany, że to twój problem, ale jest to początek. Inna uwaga, dlaczego wciąż jesteś na 2.7.5? najnowszy to 2.7.11. –