【发布时间】:2016-06-24 14:33:11
【问题描述】:
我正在使用 linux 3.3 的自定义系统上设置 BlueZ 协议栈。我正在使用 buildroot 来设置文件系统,特别是使用 BlueZ-4.101。
我正在尝试使用hcidump 实用程序获取一些日志,但尚未安装二进制文件。
我已经检查过了:
- 设备驱动程序安装在内核中
- BlueZ Utils 在 buildroot .config 文件中启用
- 其他实用程序工作,例如
hcitool或hciconfig
进入output/build/bluez_utils-4.101 中的Makefile,看起来目标文件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 之间的兼容性有些奇怪。任何建议将不胜感激!
【问题讨论】: