bluez-4.101编译成功之后发现gatttool工具并没有生成,进入bluez-4.101目录运行configure看是不是有使能编译gatttool的参数,发现了--enable-gatt和--enable-tools两个相关的参数,于是修改package/bluez-libs/Makefile:
CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--enable-gatt \
--enable-tools \
加入后面两行,编译,还是没有生成gatttool,纳闷了,怎么回事?查看整个编译过程的输出信息,确实没有编译gatttool。
进入代码目录,gatttool.c文件是放在attrib目录下,grep一下看看它的文件名在哪里被使用到了,发现Makefile.tools内容有如下代码
if READLINE
bin_PROGRAMS += attrib/gatttool
attrib_gatttool_SOURCES = attrib/gatttool.c attrib/att.c attrib/gatt.c \
attrib/gattrib.c btio/btio.c \
attrib/gatttool.h attrib/interactive.c \
attrib/utils.c src/log.c
attrib_gatttool_LDADD = lib/libbluetooth-private.la