Ошибка
После установки HomeAssistant Core, при запуске появляется ошибка:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/srv/homeassistant/lib/python3.11/site-packages/numpy/__init__.py", line 135, in <module>
raise ImportError(msg) from e
ImportError: Error importing numpy: you should not try to import numpy from
its source directory; please exit the numpy source tree, and relaunch
your python interpreter from there
Вроде как решение этой ошибки для HA описано тут и, в общем случае, тут(для raspberry pi), а еще на сайте numpy. Если кратко:
- Удалить numpy и setuptools через pip и поставить его же через apt (см ниже)
- Убедиться в версии python и numpy
- Установить недостающие компоненты
Бред сумасшедшего (можно пропустить)
Мне не помогло ни первое, ни второе, причем все было еще более интересно, так как в консольном питоне не получалось импортировать сам numpy:
import numpy as np
В моем случае все оказалось несколько иначе, достаточно было лишь внимаетльно изучить ошибку с самого начала. Оказалось, что просто в системе не хватает одного пакета, установив который все решилось:
sudo apt-get install libopenblas-dev
Общая инструкция решения проблемы
Описываю для тех, кто устанавливает HA Core по инструкции, для остальных надо незначительно модифицировать под себя
Первое. Убедиться, что активировано виртульное окружение. Строка в терминале должна иметь следующий вид (самое главное чтобы были круглые скобочки):
(homeassistant) homeassistant@raspberrypi:/srv/homeassistant $
Второе. Проверить версию python. Для этого в терминале (с виртуальным окружением) ввести:
python или python3
Результат должен содержать версию python:
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Чтобы выйти из python введите
exit()
Третье. Проверить версию numpy. Можно при помощи pip:
pip install numpy
Или при помощи python:
python
...
>>> import numpy as np
>>> np.version.version
'1.26.2'
>>> exit()
...
Четвертое. Если версии python и numpy актуальные (у меня 3.11 и 1.26 соответсвенно), то попробовать переустановить numpy:
pip uninstall -y numpy
pip uninstall -y setuptools
pip install setuptools
pip install numpy
Или
pip uninstall -y numpy
sudo apt install python3-numpy # Надо чтобы пользователь имел права sudo
Если по пути возникли проблемы, то решить их (путем гуглинга).
Повторюсь, в моем случае ошибка возникла на этапе два. То есть numpy был установлен, но импортировать его в среду выполнения было невозможно (import numpy as np). В ошибке значилось название пакета libopenblas, установив который всё решилось:
sudo apt-get install libopenblas-dev
Мои контакты есть на этом сайте, можете задать вопрос, указать на неточности и ошибки