"Невозможно скомпилировать" Python.h ". Возможно, вам нужно установить python-dev|python-devel" при установке PyPy-версии Numpy ".

Я пытаюсь установить PyPy-дистрибутив Numpy (обратите внимание, что PyPy требует версию Numpy, отличную от той, которая есть в репозиториях), но получаю ошибку:

Cannot compile 'Python.h'. Perhaps you need to install python-dev|python-devel

У меня, однако, установлена ​​последняя версия python-dev.

Какие-либо предложения?

8 ответов

Решение

Кто-то упоминал портативный PyPy, который я поддерживаю. У стабильных сборок действительно нет предварительно скомпилированной NumPy, но я также время от времени собираю нестабильные сборки, которые включают NUMPY. Вы можете увидеть их здесь: https://bitbucket.org/squeaky/portable-pypy-weekly/downloads.

Ошибка немного вводит в заблуждение, но решение для меня было установить pypy-dev (вместо python-dev).

Я отметил это на их сайте:

Установка NumPy

NumPy является исключением из правила, согласно которому большинство пакетов работают без изменений. Модуль "numpy" должен быть установлен из нашего собственного репозитория, а не из официального источника.

Если у вас есть pip (в командной строке предполагается, что он находит пип, принадлежащий PyPy, а не тот, что в CPython):

pip install git+https://bitbucket.org/pypy/numpy.git

В качестве альтернативы, прямой путь:

git clone https://bitbucket.org/pypy/numpy.git

cd numpy pypy setup.py установить

Обратите внимание, что поддержка NumPy все еще находится в стадии разработки, многие вещи не работают, а те, которые работают, могут работать не быстрее, чем NumPy на CPython.

Установка дополнительных модулей

Для тех, кто все еще сталкивается с этой ошибкой в ​​2022 году, pip3 install --upgrade pipрешил ошибку для меня.

В моем случае я использую виртуальную среду с базовым интерпретатором python3.9, но по умолчанию в системе используется python3.8. Поэтому, когда я попытался установить «sudo apt install python3-dev», он использует 3.8 python3-dev, но в моей среде требуется 3.9. Решение - изменить базовый python для виртуальной среды на системный по умолчанию 3.8.

Вот еще одна возможность. Я нашел это через их веб-страницу. Альтернативный способ установки (найден по вашей ссылке). переносные двоичные файлы

Когда я упоминал версии, вы устанавливали python-dev или python3-dev?

В моем случае мне пришлось установить python3-dev. Если установить python-devон установил все для Python 2.7, что было проблемой. Так sudo apt install python3-devдолжен решить проблему

Я встретил тот же вопрос при установке факела или numpy. вводимый cmd был следующим: pip install torch pip install numpy среда моего компьютера — python3.8, ubuntu 18.04, версия pip — 23.0.1, однако я получаю заметку в терминале ubuntu, затем был опробован новый метод установки и все работало нормально:python -m pip install torch

Другие вопросы по тегам