Bluetooth and PyBluez

Hello. I am having trouble using Bluetooth with the Colibri iMX7 module. First, I’ve succesfully enabled the bluetooth module driver via Kernel, and I can see the device with its driver installed:

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  4 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0a12 ProdID=0001 Rev=88.91
S:  Product=CSR8510 A10
C:  #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
I:  If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb

Then I followed this guide to enable Bluetooth and scan devices, which runs just fine:

[bluetooth]# scan on
Discovery started
[CHG] Controller 00:15:83:12:14:D4 Discovering: yes
[NEW] Device 94:65:2D:C5:E8:16 OnePlus 5T

Now, when I try to install PyBluez, which is the Python module used in the official guide, I get the folowing error:

Failed to build PyBluez
Installing collected packages: PyBluez
  Running setup.py install for PyBluez ... error
    Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-h0dj7wmc/PyBluez/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-s318an7z/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-armv7l-3.5
    creating build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/__init__.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/widcomm.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/osx.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/msbt.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/btcommon.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/bluez.py -> build/lib.linux-armv7l-3.5/bluetooth
    copying bluetooth/ble.py -> build/lib.linux-armv7l-3.5/bluetooth
    running build_ext
    building 'bluetooth._bluetooth' extension
    creating build/temp.linux-armv7l-3.5
    creating build/temp.linux-armv7l-3.5/bluez
    arm-angstrom-linux-gnueabi-gcc -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard -DNDEBUG -fno-inline -Wno-unused-result -Wsign-compare -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0=/usr/src/debug/python3/3.5.3-r1.0 -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0/recipe-sysroot-native= -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0/recipe-sysroot= -O2 -pipe -g -feliminate-unused-debug-types -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0=/usr/src/debug/python3/3.5.3-r1.0 -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0/recipe-sysroot-native= -fdebug-prefix-map=/build/jenkins/v2017.12/compile/machine/colibri-vf/build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/python3/3.5.3-r1.0/recipe-sysroot= -fPIC -I./port3 -I/usr/include/python3.5m -c bluez/btmodule.c -o build/temp.linux-armv7l-3.5/bluez/btmodule.o
    unable to execute 'arm-angstrom-linux-gnueabi-gcc': No such file or directory
    error: command 'arm-angstrom-linux-gnueabi-gcc' failed with exit status 1

Apparently the installer can’t find ‘arm-angstrom-linux-gnueabi-gcc’, what should I do in order to install this module correctly? Thanks in advance.

Hi @silverwings88

I tried Installing PyBluez on our regular Bsp and this is working perfectly.

root@colibri-imx7-emmc:~# python -m pip install pybluez
Collecting pybluez
  Downloading https://files.pythonhosted.org/packages/c1/98/3149481d508bee174335be6725880f00d297afebe75c15e917af8f6fe169/PyBluez-0.22.zip (109kB)
    100% |████████████████████████████████| 112kB 627kB/s 
Installing collected packages: pybluez
  Running setup.py install for pybluez ... done
Successfully installed pybluez-0.22