Решение
Установите numpy с помощью pip отдельно перед установкой вашего sdist.
Для tox, добавьте numpy прямо в массив deps.
Почему это произошло?
Недавно Numpy опубликовал numpy-1.16.0rc2
для pypy, что (в сочетании с ошибкой / недосмотром в easy_install) сломало вашу сборку:
pip не знает, как установить RC по умолчанию, а easy_install (который использует matplotlib для сборки). Если бы вы делали sdist с целой группой -vvvvvv
s, вы бы увидели что-то вроде этого:
gcc ... -I/tmp/pip-install-Eh8d9d/matplotlib/.eggs/numpy-1.16.0rc2-py2.7-linux-x86_64.egg/numpy/core/include ... -o build/temp.linux-x86_64-2.7/src/_contour.o
В частности, обратите внимание, что matplotlib создается против numpy-1.16.0rc2-py2.7
. Но тогда в другом месте вы можете увидеть что-то вроде
Successfully installed ... numpy-1.15.4 ...
Итак, когда вы попытаетесь запустить вашу программу, matplotlib попытается получить доступ к модулям, которых нет в numy-версии без RC, и потерпит неудачу.
Если у вас уже установлена numpy, easy_install не будет пытаться извлечь свою версию и вместо этого будет использовать (правильную) существующую версию.
Смотри также