установка GATTlib для Pybluez?

#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:

У меня это тоже было. Я думаю, что здесь не хватает некоторых зависимостей, найденных здесь:

https://bitbucket.org/OscarAcena/pygattlib/src/a858e8626a93cb9b4ad56f3fb980a6517a0702c6/DEPENDS?at=defaultamp;fileviewer=file-view-default

Для меня даже после их установки я не смог добиться успеха в установке. Я использовал альтернативный пакет:

 pip3 install pygattlib