Bluetooth de baja energía en C: uso de Bluez para crear un servidor GATT

Estoy intentando usar GATT en mi caja de Linux para configurar un servicio personalizado con una carga de características.

Utilizandoesta pregunta, y con los que enlaza, pude identificar el código que necesitaría escribir (haciendo uso delgatt_service_add() función).

Creé un archivo separado llamado gatt_service.c, y escribí el código que creo que necesito. Sin embargo, no puedo averiguar cómo vincular mi código a las bibliotecas de Bluez para compilar y ejecutar mi solución. Por ejemploeste sitio (aunque no es para desarrollo BLE) enlaces contra libbluetooth usando-lbluetooth como parámetro gcc, y no puedo determinar con qué vincular para que mi código funcione.

No he publicado ninguna muestra porque no estoy seguro de qué publicar; si hay alguna que sea necesaria o no he mencionado algo, hágamelo saber.

Gracias por adelantado.

EDITAR - más información:

Después de los comentarios, he usado complementos / tiempo como base para escribir mi propio archivo para mi propio "servicio de emisora". Código completo ubicado:aquí (¡No sé qué parte del código poner en la respuesta!).

Mi comando de compilación es:gcc gatt_broadcaster_service.c -Wall -o gatt_broadcaster_service -lbluetooth 'pkg-config --cflags --libs glib-2.0' -I/home/alexander/Documents/bluez-5.29/lib (incluido el bit glib para solucionar el problema informadoaquí)

El error que obtengo es: gatt_broadcaster_service.c: 11: 27: error fatal: lib / bluetooth.h: No existe tal archivo o directorio #include "lib / bluetooth.h"

Mi archivo C está almacenado en Documentos, y mi investigación me dice que no puede encontrar lib / bluetooth.h porque no está buscando en el lugar correcto (esta yesta hablar sobre el uso de las banderas de inclusión para el compilador cuando un archivo no está en las ubicaciones generales, pero no puedo hacer que eso funcione.

¡Gracias de nuevo!

Respuestas a la pregunta(4)

Su respuesta a la pregunta