Я вручную скомпилировал python-openzwave для работы с библиотекой С++.
Я хотел бы использовать его в качестве дополнения Kodi (OpenELEC работает на Pi 3), поэтому не может использовать стандартную установку.
Я скомпилировал все, загрузил отсутствующие six
и louie
libs, и теперь попробуйте запустить hello_world.py
.
Моя текущая структура каналов следующая:
- root
- bin
- .lib
- config
Alarm.o
...
libopenzwave.a
libopenzwave.so
libopenzwave.so.1.4
...
- libopenzwave
driver.pxd
group.pxd
...
- louie
__init__.py
dispatcher.py
...
- openzwave
__init__.py
command.py
...
six.py
hello_world.py
Но когда я запускаю hello_world.py, я получаю следующую ошибку:
Traceback (most recent call last):
File "hello_world.py", line 40, in <module>
from openzwave.controller import ZWaveController
File "/storage/.kodi/addons/service.multimedia.open-zwave/openzwave/controller.py", line 34, in <module>
from libopenzwave import PyStatDriver, PyControllerState
ImportError: No module named libopenzwave
Если я перемещаю libopenzwave.a
и libopenzwave.so
в корневую папку, тогда я получаю следующую ошибку:
Traceback (most recent call last):
File "hello_world.py", line 40, in <module>
from openzwave.controller import ZWaveController
File "/storage/.kodi/addons/service.multimedia.open-zwave/openzwave/controller.py", line 34, in <module>
from libopenzwave import PyStatDriver, PyControllerState
ImportError: dynamic module does not define init function (initlibopenzwave)
Что не так с моей настройкой?