找不到hcidump二进制文件

时间:2016-03-09 23:32:29

标签: linux bluez buildroot hci

我正在使用linux 3.3在自定义系统上设置BlueZ协议栈。我正在使用buildroot来设置文件系统,特别是使用BlueZ-4.101。

我正在尝试使用hcidump实用程序来获取某些日志,但尚未安装二进制文件。

我检查过:

  • 设备驱动程序安装在内核
  • 在buildroot .config文件中启用了BlueZ Utils
  • 其他实用程序可以使用,例如hcitoolhciconfig

进入Makefile中的output/build/bluez_utils-4.101,似乎目标文件hcidump.o正在编译为名为btmon的二进制文件。

进一步调查会发现,在Makefile中,btmon已分配给am__EXEEXT_10,然后将其分配给变量noinst_PROGRAMS

所以这就是我所处的位置。我很确定这是由buildroot自动生成的Makefile。我不确定这些文件是如何生成的,因此我不确定为什么btmon被分配给noinst_PROGRAMS变量。

总之,我相信我的BlueZ版本使用二进制btmon而不是hcidump。编译btmon(在output/build/bluez_utils-4.101/monitor/btmon处看到二进制文件),但由于Makefile中的说明而没有安装到我的目标系统上。

我最好的猜测是关于我的内核版本和bluez之间的兼容性。任何建议将不胜感激!

1 个答案:

答案 0 :(得分:2)

在BlueZ 4中,hcidump作为单独的包bluez-hcidump分发。但是,这从未在buildroot中打包过。因此要么为bluez-hcidump创建自己的包,要么切换到BlueZ 5. BleuZ 5由buildroot从2014.08开始提供。