#python-3.x #bluetooth
#python-3.x #bluetooth
Вопрос:
Я пытаюсь запустить примеры Bluetooth с низким энергопотреблением на raspberry pi, используя PyBluez.
Для всех примеров требуется модуль gattlib. Я получаю сообщение об ошибке
from gattlib import *
ImportError: No module named gattlib
Я пытался установить его:
pip3 install gattlib
но это не работает? Я не могу установить gattlib?
Редактировать: Это результат при установке gattlib:
pi@raspberrypi:~ $ pip3 install gattlib
Collecting gattlib
Using cached https://files.pythonhosted.org/packages/be/2f/5b1aecec551b42b59d8b399ad444b5672972efb590ca83d784dbe616a3e1/gattlib-0.20150805.tar.gz
Complete output from command python setup.py egg_info:
Package glib-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `glib-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'glib-2.0' found
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-p365j80d/gattlib/setup.py", line 12, in <module>
"pkg-config --cflags glib-2.0".split()).decode('utf-8')
File "/usr/lib/python3.5/subprocess.py", line 316, in check_output
**kwargs).stdout
File "/usr/lib/python3.5/subprocess.py", line 398, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['pkg-config', '--cflags', 'glib-2.0']' returned non-zero exit status 1
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-p365j80d/gattlib/
Ответ №1:
Документация:https://pypi.org/project/gattlib /
Сначала установите эти зависимости:
pkg-config
libboost-python-dev
libboost-thread-dev
libbluetooth-dev >= 4.101
libglib2.0-dev
python-dev
Затем, для gattlib
работы с python3, попробуйте с:
pip3 download gattlib
tar xvzf ./gattlib-0.20150805.tar.gz
cd gattlib-0.20150805/
sed -ie 's/boost_python-py34/boost_python-py35/' setup.py
pip3 install .
Комментарии:
1. Как управлять этим для Windows? Каковы зависимости? Я получаю ошибку
No matching distributions found for gattlib
.2. если вы установите зависимости, а затем снова запустите pip install, это сработает!! Спасибо, что поделились
Ответ №2:
В Linux способ исправить это
sudo apt-get update
sudo apt-get install libbluetooth-dev libboost-python-dev libboost-thread-dev libglib2.0-dev python-dev
sudo pip install gattlib
Ответ №3:
У меня это тоже было. Я думаю, что здесь не хватает некоторых зависимостей, найденных здесь:
Для меня даже после их установки я не смог добиться успеха в установке. Я использовал альтернативный пакет:
pip3 install pygattlib